public class SchemeCompilation extends Translator
Modifier and Type | Field and Description |
---|---|
static Declaration |
applyFieldDecl |
static Lambda |
lambda |
static repl |
repl |
curMethodLambda, currentMacroDefinition, firstForm, formStack, getNamedPartDecl, matchArray, patternScope, pendingForm, templateScopeDecl, xmlElementNamespaces
apply0args, apply0method, apply1args, apply1method, apply2args, apply2method, apply3method, apply4method, applyCpsMethod, applymethods, applyNargs, applyNmethod, argsCallContextField, BODY_PARSED, CALL_WITH_CONSUMER, CALL_WITH_CONTINUATIONS, CALL_WITH_RETURN, CALL_WITH_TAILCALLS, CALL_WITH_UNSPECIFIED, CLASS_WRITTEN, classPrefix, classPrefixDefault, COMPILE_SETUP, COMPILED, curClass, curLambda, current_scope, currentOptions, debugPrintExpr, debugPrintFinalExpr, defaultCallConvention, defaultClassFileVersion, emitSourceDebugExtAttr, ERROR_SEEN, explicit, exprStack, falseConstant, fullTailCallsVariable, getCallContextInstanceMethod, getCurrentEnvironmentMethod, getLocation1EnvironmentMethod, getLocation2EnvironmentMethod, getLocationMethod, getProcedureBindingMethod, getSymbolProcedureMethod, getSymbolValueMethod, immediate, inlineOk, int1Args, javaStringType, language, lexer, lexical, mainClass, mainLambda, mainMethodVariable, messages, method, minfo, MODULE_NONSTATIC, MODULE_STATIC, MODULE_STATIC_DEFAULT, MODULE_STATIC_RUN, moduleClass, moduleStatic, mustCompile, noArgsField, objArrayType, options, pcCallContextField, pendingImports, PRE_WALKED, procCallContextField, PROLOG_PARSED, PROLOG_PARSING, RESOLVED, scmBooleanType, scmKeywordType, scmListType, scmSequenceType, string1Arg, sym1Arg, thisDecl, trueConstant, typeApplet, typeCallContext, typeClass, typeClassType, typeConstVector, typeConsumer, typeEnvironment, typeFieldLocation, typeLanguage, typeList, typeLocation, typeMethodProc, typeModuleBody, typeModuleMethod, typeModuleMethodWithContext, typeObject, typeObjectType, typePair, typeProcedure, typeProcedure0, typeProcedure1, typeProcedure2, typeProcedure3, typeProcedure4, typeProcedureArray, typeProcedureN, typeRunnable, typeRunnableModule, typeServlet, typeStaticFieldLocation, typeString, typeSymbol, typeType, typeValues, WALKED, warnAsError, warnInvokeUnknownMethod, warnUndefinedVariable, warnUnknownMember, warnUnreachable, warnUnused, warnVoidUsed
Constructor and Description |
---|
SchemeCompilation(Language language,
SourceMessages messages,
NameLookup lexical) |
Modifier and Type | Method and Description |
---|---|
boolean |
appendBodyValues()
Should the values of body/block be appended as multiple values?
Otherwise, just return the result of the final expression.
|
Expression |
checkDefaultBinding(Symbol symbol,
Translator tr)
If a symbol is lexically unbound, look for a default binding.
|
boolean |
isApplyFunction(Expression exp) |
boolean |
isSimpleApplyFunction(Expression exp)
A simple apply function maps actual arguments to formals directly.
|
ApplyExp |
makeApply(Expression func,
Expression[] args) |
define, errorWithPosition, exp2Type, exp2Type, finishModule, getCurrentSyntax, getGlobalEnvironment, listLength, lookup, lookupGlobal, lookupGlobal, lookupStandardEntity, makeBody, makeBody, makePair, makeRenamedAlias, makeRenamedAlias, matches, matches, matches, matchQuoted, namespaceResolve, namespaceResolve, namespaceResolve, namespaceResolvePrefix, noteAccess, parse, popForms, popPositionOf, popRenamedAlias, processAccesses, pushPositionOf, pushRenamedAlias, resolveModule, rewrite_body, rewrite_car, rewrite_car, rewrite_lookup, rewrite_pair, rewrite_with_position, rewrite, rewrite, rewrite, rewriteBody, rewriteInBody, safeCar, safeCdr, scanBody, scanForm, selfEvaluatingSymbol, setLine, setLine, setLineOf, stripSyntax, wrapSyntax
addClass, addMainClass, allocLocalField, cleanupAfterCompilation, compileConstant, compileConstant, compileToArchive, currentCallConvention, currentLambda, currentModule, currentScope, demangle2, demangleName, demangleName, emitCoerceToBoolean, emitPushBoolean, error, error, error, error, findForImmediateLiterals, findNamedClass, freeLocalField, generateApplyMethodsWithContext, generateApplyMethodsWithoutContext, generateClassName, generateConstructor, generateConstructor, generateMainMethod, generateMatchMethods, generatingApplet, generatingServlet, getBooleanOption, getBooleanOption, getCode, getColumnNumber, getConstructor, getConstructor, getCurrent, getFileName, getForNameHelper, getLanguage, getLineNumber, getMessages, getModule, getModuleType, getPublicId, getState, getSystemId, inlineOk, inlineOk, isPedantic, isStableSourceLocation, isStatic, letDone, letEnter, letStart, letVariable, letVariable, loadCallContext, loadClassRef, loopBody, loopCond, loopEnter, loopRepeat, loopRepeat, loopRepeat, loopStart, loopVariable, makeCoercion, makeCoercion, makeQuoteExp, makeRunnable, mangleName, mangleName, mangleNameIfNeeded, mangleURI, mustCompileHere, outputClass, pop, pop, process, push, push, pushNewModule, pushNewModule, pushPendingImport, pushScope, registerForImmediateLiterals, resolve, restoreCurrent, setColumn, setCurrent, setCurrentScope, setEvalName, setFile, setInteractiveName, setLine, setLine, setLine, setLine, setLocation, setMessages, setModule, setModuleName, setPopCurrentScope, setPushCurrentScope, setSaveCurrent, setSharedModuleDefs, setState, setupLiterals, sharedModuleDefs, syntaxError, toString, usedClass, usingCallContext, usingCPStyle, usingTailCalls, warnAsError, warnInvokeUnknownMethod, warnUndefinedVariable, warnUnknownMember, warnUnreachable, warnUnused, warnVoidUsed
public static final Declaration applyFieldDecl
public static final repl repl
public static final Lambda lambda
public SchemeCompilation(Language language, SourceMessages messages, NameLookup lexical)
public ApplyExp makeApply(Expression func, Expression[] args)
makeApply
in class Translator
public boolean isApplyFunction(Expression exp)
isApplyFunction
in class Compilation
public boolean isSimpleApplyFunction(Expression exp)
Compilation
isSimpleApplyFunction
in class Compilation
public boolean appendBodyValues()
appendBodyValues
in class Translator
public Expression checkDefaultBinding(Symbol symbol, Translator tr)
typename?
as a type predicate,
->typename
as a conversion function,
plus whatever the overridden method handles.checkDefaultBinding
in class Translator