Class CompilationUnitBuilder
- java.lang.Object
-
- org.inferred.freebuilder.processor.source.CompilationUnitBuilder
-
- All Implemented Interfaces:
QualifiedNameAppendable,SourceParser.EventHandler
class CompilationUnitBuilder extends java.lang.Object implements QualifiedNameAppendable, SourceParser.EventHandler
Internals ofSourceBuilder, handling source parsing and type shortening.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description private static classCompilationUnitBuilder.InitialScope
-
Field Summary
Fields Modifier and Type Field Description private FeatureSetfeaturesprivate intimportsIndexprivate SourceParserparserprivate java.lang.Stringpkgprivate ScopeHandlerscopeHandlerprivate java.util.List<Scope>scopesprivate java.lang.StringBuildersourceprivate java.lang.StringtopLevelTypeprivate java.util.List<QualifiedName>typesprivate java.util.List<TypeUsage>usages
-
Constructor Summary
Constructors Constructor Description CompilationUnitBuilder(ScopeHandler.Reflection reflect, FeatureSet features)
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description voidappend(char c)voidappend(java.lang.CharSequence csq)voidappend(java.lang.CharSequence csq, int start, int end)voidappend(QualifiedName type)<T extends Feature<T>>
Tfeature(FeatureType<T> feature)private static java.lang.StringformatSnippet(java.lang.StringBuilder source, java.util.List<TypeUsage> usages)private static java.lang.StringformatSource(java.lang.String source)private QualifiedNamenestedType(java.lang.String simpleName)voidonBlockEnd()voidonMethodBlockStart(java.lang.String methodName, java.util.Set<java.lang.String> paramNames)voidonOtherBlockStart()voidonPackageStatement(java.lang.String packageName)voidonTypeBlockStart(java.lang.String keyword, java.lang.String simpleName, java.util.Set<java.lang.String> supertypes)Scopescope()java.lang.StringtoString()QualifiedNametypename()
-
-
-
Field Detail
-
features
private final FeatureSet features
-
scopeHandler
private final ScopeHandler scopeHandler
-
parser
private final SourceParser parser
-
scopes
private final java.util.List<Scope> scopes
-
types
private final java.util.List<QualifiedName> types
-
usages
private final java.util.List<TypeUsage> usages
-
pkg
private java.lang.String pkg
-
topLevelType
private java.lang.String topLevelType
-
importsIndex
private int importsIndex
-
source
private final java.lang.StringBuilder source
-
-
Constructor Detail
-
CompilationUnitBuilder
CompilationUnitBuilder(ScopeHandler.Reflection reflect, FeatureSet features)
-
-
Method Detail
-
feature
public <T extends Feature<T>> T feature(FeatureType<T> feature)
-
typename
public QualifiedName typename()
-
onPackageStatement
public void onPackageStatement(java.lang.String packageName)
- Specified by:
onPackageStatementin interfaceSourceParser.EventHandler
-
onTypeBlockStart
public void onTypeBlockStart(java.lang.String keyword, java.lang.String simpleName, java.util.Set<java.lang.String> supertypes)- Specified by:
onTypeBlockStartin interfaceSourceParser.EventHandler
-
nestedType
private QualifiedName nestedType(java.lang.String simpleName)
-
onMethodBlockStart
public void onMethodBlockStart(java.lang.String methodName, java.util.Set<java.lang.String> paramNames)- Specified by:
onMethodBlockStartin interfaceSourceParser.EventHandler
-
onOtherBlockStart
public void onOtherBlockStart()
- Specified by:
onOtherBlockStartin interfaceSourceParser.EventHandler
-
onBlockEnd
public void onBlockEnd()
- Specified by:
onBlockEndin interfaceSourceParser.EventHandler
-
append
public void append(char c)
- Specified by:
appendin interfaceQualifiedNameAppendable
-
append
public void append(java.lang.CharSequence csq)
- Specified by:
appendin interfaceQualifiedNameAppendable
-
append
public void append(java.lang.CharSequence csq, int start, int end)- Specified by:
appendin interfaceQualifiedNameAppendable
-
append
public void append(QualifiedName type)
- Specified by:
appendin interfaceQualifiedNameAppendable
-
scope
public Scope scope()
-
toString
public java.lang.String toString()
- Overrides:
toStringin classjava.lang.Object
-
formatSnippet
private static java.lang.String formatSnippet(java.lang.StringBuilder source, java.util.List<TypeUsage> usages)
-
formatSource
private static java.lang.String formatSource(java.lang.String source)
-
-