Class JavaStubGenerator
- java.lang.Object
-
- gw.internal.gosu.parser.java.compiler.JavaStubGenerator
-
public class JavaStubGenerator extends java.lang.Object
-
-
Field Summary
Fields Modifier and Type Field Description private static JavaStubGeneratorINSTANCE
-
Constructor Summary
Constructors Modifier Constructor Description privateJavaStubGenerator()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description private intaddReifiedTypeParamaters(java.lang.StringBuilder sb, DynamicFunctionSymbol dfs)private voidgenAnnotation(IGosuClass type, java.lang.StringBuilder sb)private voidgenAnnotations(java.lang.StringBuilder sb, java.util.List<? extends IAnnotationInfo> annotations)private java.lang.StringgenClassExtends(IGosuClass type)private voidgenClassFeatures(java.lang.StringBuilder sb, IGosuClassInternal gsClass)private java.lang.StringgenClassImplements(IGosuClass type)private voidgenClassOrInterface(IGosuClass type, java.lang.StringBuilder sb)private java.lang.StringgenCompileTimeConstantExpression(IType type, java.lang.Object value)private voidgenConstructors(java.lang.StringBuilder sb, IGosuClassInternal gsClass, GosuClassParseInfo parseInfo)private voidgenEnum(IGosuClass type, java.lang.StringBuilder sb)private voidgenEnumConstants(java.lang.StringBuilder sb, IGosuClassInternal gsClass)private voidgenFields(java.lang.StringBuilder sb, IGosuClassInternal gsClass, GosuClassParseInfo parseInfo)private java.lang.StringgenFieldValue(IAnnotationInfo ai, IType fieldType, java.lang.String fieldName)private voidgenInnerClasses(java.lang.StringBuilder sb, IGosuClassInternal gsClass)private voidgenMethod(java.lang.StringBuilder sb, IGosuClassInternal gsClass, DynamicFunctionSymbol method)private voidgenMethod(java.lang.StringBuilder sb, IGosuClassInternal gsClass, DynamicFunctionSymbol method, java.lang.String name)private voidgenMethods(java.lang.StringBuilder sb, IGosuClassInternal gsClass, GosuClassParseInfo parseInfo)private voidgenMethods(java.lang.StringBuilder sb, IGosuClassInternal gsClass, java.util.Collection<DynamicFunctionSymbol> methods)(package private) voidgenModifiers(java.lang.StringBuilder sb, int mod, boolean isDefault, int defModifier)private voidgenPackage(IGosuClass type, java.lang.StringBuilder sb)private voidgenParameters(java.lang.StringBuilder sb, DynamicFunctionSymbol dfs)private voidgenProperties(java.lang.StringBuilder sb, IGosuClassInternal gsClass, GosuClassParseInfo parseInfo)private voidgenProperties(java.lang.StringBuilder sb, IGosuClassInternal gsClass, java.util.Collection<DynamicPropertySymbol> properties)private voidgenReturnStmt(java.lang.StringBuilder sb, IType returnType)java.lang.StringgenStub(IGosuClass type)private voidgenType(IGosuClass type, java.lang.StringBuilder sb)private java.lang.StringgetFunctionalInterface(IFunctionType funcType)private java.lang.StringgetTypeName(IType type)static intgetTypeVarCountForDFS(DynamicFunctionSymbol dfs)private java.lang.StringgetTypeVariables(IType type)private static intgetTypeVarsForEnhancement(DynamicFunctionSymbol dfs)static JavaStubGeneratorinstance()private booleanisBuiltinStaticEnumMethod(DynamicFunctionSymbol method)private java.lang.StringmakeDefaultPrimitiveValue(IType returnType)private booleanshouldImplement(IType iface, IGosuClass gsClass)
-
-
-
Field Detail
-
INSTANCE
private static final JavaStubGenerator INSTANCE
-
-
Method Detail
-
instance
public static JavaStubGenerator instance()
-
genStub
public java.lang.String genStub(IGosuClass type)
-
genType
private void genType(IGosuClass type, java.lang.StringBuilder sb)
-
genPackage
private void genPackage(IGosuClass type, java.lang.StringBuilder sb)
-
genAnnotation
private void genAnnotation(IGosuClass type, java.lang.StringBuilder sb)
-
genEnum
private void genEnum(IGosuClass type, java.lang.StringBuilder sb)
-
genEnumConstants
private void genEnumConstants(java.lang.StringBuilder sb, IGosuClassInternal gsClass)
-
genClassOrInterface
private void genClassOrInterface(IGosuClass type, java.lang.StringBuilder sb)
-
genClassFeatures
private void genClassFeatures(java.lang.StringBuilder sb, IGosuClassInternal gsClass)
-
genClassImplements
private java.lang.String genClassImplements(IGosuClass type)
-
shouldImplement
private boolean shouldImplement(IType iface, IGosuClass gsClass)
-
genClassExtends
private java.lang.String genClassExtends(IGosuClass type)
-
getTypeVariables
private java.lang.String getTypeVariables(IType type)
-
genInnerClasses
private void genInnerClasses(java.lang.StringBuilder sb, IGosuClassInternal gsClass)
-
genFields
private void genFields(java.lang.StringBuilder sb, IGosuClassInternal gsClass, GosuClassParseInfo parseInfo)
-
genConstructors
private void genConstructors(java.lang.StringBuilder sb, IGosuClassInternal gsClass, GosuClassParseInfo parseInfo)
-
genProperties
private void genProperties(java.lang.StringBuilder sb, IGosuClassInternal gsClass, GosuClassParseInfo parseInfo)
-
genProperties
private void genProperties(java.lang.StringBuilder sb, IGosuClassInternal gsClass, java.util.Collection<DynamicPropertySymbol> properties)
-
genMethods
private void genMethods(java.lang.StringBuilder sb, IGosuClassInternal gsClass, GosuClassParseInfo parseInfo)
-
genMethods
private void genMethods(java.lang.StringBuilder sb, IGosuClassInternal gsClass, java.util.Collection<DynamicFunctionSymbol> methods)
-
genMethod
private void genMethod(java.lang.StringBuilder sb, IGosuClassInternal gsClass, DynamicFunctionSymbol method)
-
genMethod
private void genMethod(java.lang.StringBuilder sb, IGosuClassInternal gsClass, DynamicFunctionSymbol method, java.lang.String name)
-
isBuiltinStaticEnumMethod
private boolean isBuiltinStaticEnumMethod(DynamicFunctionSymbol method)
-
genAnnotations
private void genAnnotations(java.lang.StringBuilder sb, java.util.List<? extends IAnnotationInfo> annotations)
-
genFieldValue
private java.lang.String genFieldValue(IAnnotationInfo ai, IType fieldType, java.lang.String fieldName)
-
genCompileTimeConstantExpression
private java.lang.String genCompileTimeConstantExpression(IType type, java.lang.Object value)
-
genReturnStmt
private void genReturnStmt(java.lang.StringBuilder sb, IType returnType)
-
makeDefaultPrimitiveValue
private java.lang.String makeDefaultPrimitiveValue(IType returnType)
-
genParameters
private void genParameters(java.lang.StringBuilder sb, DynamicFunctionSymbol dfs)
-
addReifiedTypeParamaters
private int addReifiedTypeParamaters(java.lang.StringBuilder sb, DynamicFunctionSymbol dfs)
-
getTypeVarCountForDFS
public static int getTypeVarCountForDFS(DynamicFunctionSymbol dfs)
-
getTypeVarsForEnhancement
private static int getTypeVarsForEnhancement(DynamicFunctionSymbol dfs)
-
genModifiers
void genModifiers(java.lang.StringBuilder sb, int mod, boolean isDefault, int defModifier)
-
getTypeName
private java.lang.String getTypeName(IType type)
-
getFunctionalInterface
private java.lang.String getFunctionalInterface(IFunctionType funcType)
-
-