public final class GoloModule extends GoloElement implements FunctionContainer
| Modifier and Type | Field and Description | 
|---|---|
static java.util.Set<ModuleImport> | 
DEFAULT_IMPORTS  | 
static java.lang.String | 
MODULE_INITIALIZER_FUNCTION  | 
| Constructor and Description | 
|---|
GoloModule(PackageAndClass packageAndClass)  | 
GoloModule(PackageAndClass name,
          ReferenceTable references)  | 
cantConvert, cantReplace, cantReplace, doesNotContain, getASTNode, getDocumentation, getLocalReferenceTable, getParentNode, getPositionInSourceCode, hasASTNode, makeParentOf, replaceInParentBy, setASTNode, setParentNodepublic static final java.util.Set<ModuleImport> DEFAULT_IMPORTS
public static final java.lang.String MODULE_INITIALIZER_FUNCTION
public GoloModule(PackageAndClass packageAndClass)
public GoloModule(PackageAndClass name, ReferenceTable references)
public GoloModule ofAST(GoloASTNode n)
ofAST in class GoloElementpublic PackageAndClass getPackageAndClass()
public java.util.Set<ModuleImport> getImports()
public java.util.Collection<Augmentation> getAugmentations()
public java.util.Set<NamedAugmentation> getNamedAugmentations()
public void addImport(ModuleImport moduleImport)
public java.util.Set<GoloFunction> getFunctions()
getFunctions in interface FunctionContainerpublic void addFunctions(java.util.Collection<GoloFunction> functions)
addFunctions in interface FunctionContainerpublic boolean hasFunctions()
hasFunctions in interface FunctionContainerpublic boolean hasMain()
public void addFunction(GoloFunction function)
addFunction in interface FunctionContainerpublic void addNamedAugmentation(NamedAugmentation augment)
public Augmentation addAugmentation(Augmentation augment)
public GoloElement getSubtypeByName(java.lang.String name)
public void addModuleStateInitializer(AssignmentStatement assignment)
public void accept(GoloIrVisitor visitor)
GoloElement
 This method should only call the visitor visitXXXX method.
 The children of this node will be visited by the
 GoloElement.walk(GoloIrVisitor) method.
accept in class GoloElementpublic void walk(GoloIrVisitor visitor)
GoloElementwalk in class GoloElementprotected void replaceElement(GoloElement original, GoloElement newElement)
GoloElement
 Replace original with newElement if original is a child of this node
 and type matches.
replaceElement in class GoloElementoriginal - the original value to replace. Must be a child of this nodenewElement - the element to replace with. Type must match.GoloElement.cantReplace(), 
GoloElement.cantReplace(GoloElement, GoloElement), 
GoloElement.doesNotContain(GoloElement), 
GoloElement.cantConvert(String, Object)