Class ObjectExp
- All Implemented Interfaces:
gnu.kawa.format.Printable, Named, SourceLocator, SourceLocator, Locator
An expression that evaluated to an instance of an anonymous class.
It's conceptually questionable that this inherits from ClassExp
- it should perhaps inherit from ApplyExp.
-
Nested Class Summary
Nested classes/interfaces inherited from class LambdaExp
LambdaExp.ClosureNested classes/interfaces inherited from interface SourceLocator
SourceLocator.Simple -
Field Summary
Fields inherited from class ClassExp
CLASS_SPECIFIED, classNameSpecifier, clinitMethod, HAS_SUBCLASS, initMethod, INTERFACE_SPECIFIED, IS_ABSTRACT, IS_PACKAGE_MEMBER, superClassIndex, supersFields inherited from class LambdaExp
ALLOW_OTHER_KEYWORDS, applyToConsumer, ATTEMPT_INLINE, body, CLOSURE_ENV_NAME, closureEnvField, firstChild, HAS_NONTRIVIAL_DEFAULT, HAS_NONTRIVIAL_PATTERN, IN_EXPWALKER, inlineHome, keywords, max_args, min_args, nameDecl, NEXT_AVAIL_FLAG, nextSibling, NO_FIELD, opt_args, OVERLOADABLE_FIELD, PASSES_TAILCALLS, PUBLIC_METHOD, returnContinuation, returnType, SEQUENCE_RESULT, staticLinkFieldFields inherited from class Expression
applyMethodExpression, flags, noExpressions, type, VALIDATEDFields inherited from class Procedure
applyMethodType, applyToConsumerDefault, applyToConsumerMethod, applyToObjectDefault, applyToObjectMethod, compilerKey, compilerXKey, inlineIfConstantSymbol, validateApplyKey, validateXApplyKeyFields inherited from class PropertySet
nameKey -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected TypeThe ClassType generated for this class.voidcompile(Compilation comp, Target target) protected <R,D> R visit(ExpVisitor<R, D> visitor, D d) Methods inherited from class ClassExp
addMethod, compileMembers, compilePushClass, compileSetField, createFields, declareParts, findMethodForBridge, generateBridgeMethod, getClassName, getClassType, getCompiledClassType, isAbstract, isMakingClassPair, isSimple, mustCompile, print, setClassType, setTypes, slotToMethodName, visitChildrenMethods inherited from class LambdaExp
addParameter, 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, inlinedInCallerOrCheckMethodOnly, inlinedInCheckMethod, isClassMethod, isHandlingTailCalls, isModuleBody, isNative, loadHeapFrame, maybeSetReturnType, outerLambda, outerLambdaNotInline, outerLambdaOrCaller, pushChild, restArgType, reverseChildList, setCallConvention, setCanRead, setClassMethod, setCoercedReturnType, setCoercedReturnValue, setExceptions, setImportsLexVars, setImportsLexVars, setInlineOnly, setInlineOnly, setNeedsStaticLink, setNeedsStaticLink, setProperty, setReturnType, setType, side_effects, toString, usingCallContext, validateApply, variable_args, visitChildrenOnly, visitPropertiesMethods inherited from class ScopeExp
add, add, addDeclaration, addDeclaration, addDeclaration, clearCallList, countDecls, currentLambda, currentModule, duplicateDeclarationError, firstDecl, getDefine, getNoDefine, getOuter, getVarScope, isClassGenerated, lastDecl, lookup, lookup, nestedIn, nesting, popScope, remove, remove, replaceFollowing, setIndexes, setOuter, topLevelMethods inherited from class Expression
applyMethodExpression, checkLiteralKeyword, compile, compile, compileWithPosition, compileWithPosition, deepCopy, deepCopy, deepCopy, deepCopy, eval, eval, getColumnNumber, getEndColumn, getEndLine, getFileName, getFlag, getFlags, getLineNumber, getPublicId, getStartColumn, getStartLine, getSystemId, getType, getTypeRaw, isSingleValue, isStableSourceLocation, makeWhile, maybeSetLine, neverReturns, numArgs, print, printLineColumn, setFile, setFlag, setFlag, setLine, setLine, setLine, setLine, setLine, setLocation, setType, valueIfConstantMethods inherited from class Procedure
apply0, apply1, apply2, apply3, apply4, applyL, applyN, applyToConsumerDefault, applyToObjectDefault, checkArgCount, checkBadCode, getApplyMethod, getApplyToConsumerMethod, getApplyToObjectMethod, getReturnType, getSetter, getSourceLocation, isSideEffectFree, lookupApplyHandle, maxArgs, maxArgs, minArgs, minArgs, set0, set1, setN, setSetter, setSourceLocationMethods inherited from class PropertySet
getName, getSymbol, removeProperty, setName, setProperty, setSymbol
-
Constructor Details
-
ObjectExp
public ObjectExp()
-
-
Method Details
-
calculateType
Description copied from class:ClassExpThe ClassType generated for this class. Note difference fromgetClassType: The value of aClassExp(viewed as an expression) is a class/type object, sogetTypereturns the type of a type.- Overrides:
calculateTypein classClassExp
-
visit
-
compile
-