Libraries.Language.Compile.Symbol.Class Documentation
Inherits from: Libraries.Language.Compile.Location, Libraries.Language.Object, Libraries.Language.Compile.Symbol.Symbol
Actions Documentation
Add(Libraries.Language.Compile.Symbol.Action method)
get the index of the generic from the parent
Parameters
Return
Add(Libraries.Language.Compile.Symbol.Variable variable)
This returns all classes that have valid use statements in the class.
Parameters
Return
AddGeneric(text name)
Parameters
- text name
AddParentClass(Libraries.Language.Compile.Symbol.Class clazz)
Parameters
AddUnresolvedParent(Libraries.Language.Compile.QualifiedName name)
Parameters
AddUnresolvedUseStatement(Libraries.Language.Compile.QualifiedName name)
Returns the file on disk that contains the implementation of this class.
Parameters
AddUseLocation(Libraries.Language.Compile.Location location)
Parameters
AddValidUse(Libraries.Language.Compile.Symbol.Class clazz)
This action returns those parents that are directly specified in the class. Object is also always included in this list.
Parameters
Return
CalculateFieldHints(Libraries.Language.Compile.CompilerErrorManager errors)
This action returns a class from a name, like Object, for Libraries.Language.Object. It assumes that the name passed in is not resolved. Fully resolvable names (Libraries.Language.Object) will not be resolved by this action, and as such, need to be resolved from the symbol table.
Parameters
Compare(Libraries.Language.Object object)
ComputeGenericsTables(Libraries.Language.Compile.CompilerErrorManager compilerErrorManager)
ComputeVirtualActionTable(Libraries.Language.Compile.CompilerErrorManager errors)
This action looks at all actions listed in this class's declared action table, in addition to those actions declared in parents, and fills up a new virtual action table with all actions combined. If this action has an error, it is created and sent to the compiler error manager passed in.
Parameters
ConvertStaticKeyToBytecodeInterfacePath()
This action returns the static key formatted as a class name in Java bytecode.
Return
text:
ConvertStaticKeyToBytecodePath()
This action returns the static key formatted as a class name in Java bytecode.
Return
text:
ConvertStaticKeyToBytecodePathTypeName()
This action returns the static key formatted as a type name in Java bytecode.
Return
text:
ConvertStaticKeyToBytecodePathTypeNameInterface()
This action returns the static key formatted as a type name in Java bytecode. This version acts as an interface type.
Return
text:
ConvertStaticKeyToFieldPath()
This action returns the static key formatted as a class name in the style of a field.
Return
text:
ConvertStaticKeyToJavaScriptName()
This action returns the static key formatted as a class name in Java bytecode.
Return
text:
ConvertStaticKeyToParentActionName()
This action digs through the generics and, if it finds one by this name, returns its index. If no generic by this name is found, then this returns -1.
Return
text:
ConvertStaticKeyToParentFieldInterfaceName()
This action converts the static key of this class to a name that can be used by the compiler as a class field name. An example would be that Libraries.Language.Object becomes Libraries_Language_Object__.
Return
text:
ConvertStaticKeyToParentFieldName()
This action converts the static key of this class to a name that can be used by the compiler as a class field name. An example would be that Libraries.Language.Object becomes Libraries_Language_Object__.
Return
text:
ConvertStaticKeyToPluginPath()
This action returns the static key formatted as a plugin class name in Java bytecode.
Return
text:
ConvertStaticKeyToPluginPathTypeName()
This action returns the static key formatted as a plugin class type name in Java bytecode.
Return
text:
ConvertStaticKeyToUnderScore()
This action returns the static key formatted as a class name in Java bytecode.
Return
text:
ConvertToActionNameFromField(Libraries.Language.Compile.Symbol.Variable variable, boolean isGetter)
This action returns whether or not this particular class represents Libraries.Language.Object.
Parameters
- Libraries.Language.Compile.Symbol.Variable
- boolean isGetter
Return
text:
CreateLocationCopy()
This action is a helper action to get copies of the location.
Return
Equals(Libraries.Language.Object object)
This action determines if two objects are equal based on their hash code values.
Parameters
- Libraries.Language.Object: The to be compared.
Return
boolean: True if the hash codes are equal and false if they are not equal.
Example
use Libraries.Language.Object
use Libraries.Language.Types.Text
Object o
Text t
boolean result = o:Equals(t)
GenerateSetterNameFromField(Libraries.Language.Compile.Symbol.Variable variable)
This action returns true if this class is either Libraries.Language.Errors.Error or is a subclass.
Parameters
Return
text:
GetAction(text key)
GetActions()
GetColumnNumber()
Return
integer
GetColumnNumberEnd()
Return
integer
GetConstructor()
This action returns whether or not the class has an explicity constructor defined. If it returns true, the user has defined a constructor. If it returns false, they have not.
Return
GetDirectParentClasses()
This action returns those parents that are directly specified in the class. Object is also always included in this list.
Return
GetDisplayName()
This returns a key related to the package a class is contained in. For example, if a class's fully qualified name is Libraries.Language.Object, then this would return Libraries.Langauge. If the class's fully qualified name is Bob, then this would return the empty string, which indicates the default package.
Return
text:
GetDocumentation()
GetFile()
Returns the file on disk that contains the implementation of this class.
Return
GetGeneric(integer location)
Parameters
- integer location
Return
text
GetGenericList()
This action returns a list of of all generic names. For example, if
the class is declared as A
Return
text:
GetHashCode()
This action gets the hash code for an object.
Return
integer: The integer hash code of the object.
Example
Object o
integer hash = o:GetHashCode()
GetHiddenVariableName()
This action returns the static key formatted as a type name in Java bytecode. This version acts as an interface type.
Return
text:
GetIndex()
Return
integer
GetIndexEnd()
Return
integer
GetIndexOfGeneric(text name)
This action digs through the generics and, if it finds one by this name, returns its index. If no generic by this name is found, then this returns -1.
Parameters
- text name
Return
integer:
GetInterfaceName()
Return
text
GetLineNumber()
Return
integer
GetLineNumberEnd()
Return
integer
GetName()
Return
text
GetNameLocation()
GetNumberGenerics()
Return
integer
GetPackage()
This action converts the static key of this class to a name that can be used by the compiler as a class field name. An example would be that Libraries.Language.Object becomes Libraries_Language_Object__.
Return
GetPackageKey()
This returns a key related to the package a class is contained in. For example, if a class's fully qualified name is Libraries.Language.Object, then this would return Libraries.Langauge. If the class's fully qualified name is Bob, then this would return the empty string, which indicates the default package.
Return
text:
GetParentActions()
GetParentClass(text key)
This action returns the order in which parents should be instantiated. It provides an optimal ordering to ensure children do not get created before their parents.
Parameters
- text key
Return
GetParentClasses()
Obtains a list of all parents reachable from this class. This includes parents and the parents of parents as a flattened list.
Return
GetParentCreationOrder()
This action returns the order in which parents should be instantiated. It provides an optimal ordering to ensure children do not get created before their parents.
Return
GetParentGenerics(text key)
GetParentSize()
get the parent corresponding to this key
Return
integer:
GetPluginName()
Returns the name of the plugin for this class.
Return
text:
GetStaticKey()
use that.
Return
text:
GetUnresolvedParents()
GetUnresolvedUseStatement(text key)
it's fine to return undefined, because we just ignored the request
Parameters
- text key
Return
GetUnresolvedUseStatements()
if it's the same name, but a different class, then throw an error