Class SourceEmitterConfig


  • public class SourceEmitterConfig
    extends Object
    Configuration options for source code emission.
    • Method Detail

      • isUseVarKeyword

        public boolean isUseVarKeyword()
        Returns:
        true if local declarations use var instead of the declared type
      • isIncludeIRComments

        public boolean isIncludeIRComments()
        Returns:
        true if IR instructions are emitted as comments
      • isIncludeLineNumbers

        public boolean isIncludeLineNumbers()
        Returns:
        true if original line numbers are emitted as comments
      • getIndentString

        public String getIndentString()
        Returns:
        the string used for one indent level
      • isAlwaysUseBraces

        public boolean isAlwaysUseBraces()
        Returns:
        true if single-statement bodies are still braced
      • isBlankLinesBetweenMethods

        public boolean isBlankLinesBetweenMethods()
        Returns:
        true if a blank line separates methods
      • getMaxLineLength

        public int getMaxLineLength()
        Returns:
        the line length the emitter wraps at, 0 for no limit
      • isUseFullyQualifiedNames

        public boolean isUseFullyQualifiedNames()
        Returns:
        true if type names are emitted fully qualified instead of imported
      • getIdentifierMode

        public IdentifierMode getIdentifierMode()
        Returns:
        how non-standard or obfuscated identifiers are emitted
      • isResolveBootstrapMethods

        public boolean isResolveBootstrapMethods()
        Returns:
        true if invokedynamic sites are resolved back to the methods they call
      • defaults

        public static SourceEmitterConfig defaults()
        Returns:
        a config with every builder setting left at its default
      • debug

        public static SourceEmitterConfig debug()
        Returns:
        a config that emits IR comments and line numbers
      • compact

        public static SourceEmitterConfig compact()
        Returns:
        a config with two-space indent, no optional braces and no blank line between methods