public class ObjectExp extends ClassExp
CLASS_SPECIFIED, classNameSpecifier, clinitMethod, HAS_SUBCLASS, initMethod, INTERFACE_SPECIFIED, IS_ABSTRACT, IS_PACKAGE_MEMBER, superClassIndex, supers
ATTEMPT_INLINE, body, closureEnvField, firstChild, IN_EXPWALKER, inlineHome, keywords, max_args, min_args, nameDecl, NEXT_AVAIL_FLAG, nextSibling, NO_FIELD, opt_args, OVERLOADABLE_FIELD, returnContinuation, returnType, SEQUENCE_RESULT, staticLinkField
flags, noExpressions, type, VALIDATED
compilerKey, validateApplyKey
nameKey
Constructor and Description |
---|
ObjectExp() |
Modifier and Type | Method and Description |
---|---|
protected Type |
calculateType()
The ClassType generated for this class.
|
void |
compile(Compilation comp,
Target target) |
protected <R,D> R |
visit(ExpVisitor<R,D> visitor,
D d) |
addMethod, compileMembers, compilePushClass, compileSetField, declareParts, findMethodForBridge, generateBridgeMethod, getClassName, getClassType, getCompiledClassType, isAbstract, isMakingClassPair, isSimple, mustCompile, print, setClassType, setSimple, setTypes, slotToMethodName, visitChildren
allocChildClasses, allocFrame, apply, capture, checkForInitCall, compileBody, compileEnd, declareClosureEnv, declareThis, generateApplyMethods, getBodyFirstExpression, getCallConvention, getCaller, getCanRead, getExpClassName, getHeapFrameType, getImportsLexVars, getInlineOnly, getMainMethod, getMethod, getNeedsClosureEnv, getNeedsStaticLink, getOwningLambda, getProperty, getReturnType, incomingArgs, isClassGenerated, isClassMethod, isHandlingTailCalls, isModuleBody, isNative, loadHeapFrame, outerLambda, outerLambdaNotInline, outerLambdaOrCaller, restArgType, setCallConvention, setCanRead, setClassMethod, setCoercedReturnType, setCoercedReturnValue, setExceptions, setImportsLexVars, setImportsLexVars, setInlineOnly, setNeedsStaticLink, setNeedsStaticLink, setProperty, setReturnType, setType, side_effects, toString, usingCallContext, validateApply, variable_args, visitChildrenOnly, visitProperties
add, add, addDeclaration, addDeclaration, addDeclaration, clearCallList, countDecls, currentLambda, currentModule, duplicateDeclarationError, firstDecl, getDefine, getNoDefine, getVarScope, lookup, lookup, nestedIn, nesting, popScope, remove, remove, replaceFollowing, setIndexes, topLevel
apply0, compile, compile, compileButFirst, compileNotePosition, compileWithPosition, compileWithPosition, deepCopy, deepCopy, deepCopy, deepCopy, eval, eval, getColumnNumber, getFileName, getFlag, getFlags, getLineNumber, getPublicId, getSystemId, getType, isSingleValue, isStableSourceLocation, makeWhile, match0, neverReturns, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLocation, valueIfConstant
apply, check0, check1, check2, check3, check4, checkArgCount, checkN, getReturnType, getSetter, getSourceLocation, isSideEffectFree, match1, match2, match3, match4, matchN, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocation
getName, getSymbol, removeProperty, setName, setProperty, setSymbol
protected Type calculateType()
ClassExp
getClassType
:
The value of a ClassExp
(viewed as an expression) is a
class/type object, so getType
returns the type of a type.calculateType
in class ClassExp
protected <R,D> R visit(ExpVisitor<R,D> visitor, D d)
public void compile(Compilation comp, Target target)