public class Q2Translator extends SchemeCompilation
Translator.FormStack, Translator.ScanContext, Translator.ValuesFromLList
SourceLocator.Simple
applyFieldDecl, lambda, mlambda, repl
curMethodLambda, currentMacroDefinition, 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, debugPrintANF, debugPrintExpr, debugPrintFinalExpr, defaultCallConvention, defaultClassFileVersion, emitSourceDebugExtAttr, enableANF, ERROR_SEEN, explicit, exprStack, falseConstant, fullTailCallsVariable, getCallContextInstanceMethod, getCurrentEnvironmentMethod, getNextArgMethod, immediate, inlineOk, int1Args, javaStringType, language, lexer, lexical, mainClass, mainLambda, mainMethodVariable, maxErrors, messages, method, 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, subModuleMap, sym1Arg, thisDecl, trueConstant, typeApplet, typeCallContext, typeCharSequence, typeClass, typeClassType, typeCompiledProc, typeConsumer, typeEnvironment, typeFieldLocation, typeLanguage, typeList, typeLocation, typeLocationProc, typeMethodProc, typeModuleBody, typeObject, typeObjectType, typePair, typeProcedure, typeProcedure0, typeProcedure1, typeProcedure2, typeProcedure3, typeProcedure4, typeProcedureArray, typeProcedureN, typeRunnable, typeRunnableModule, typeServlet, typeStaticFieldLocation, typeString, typeSymbol, typeType, typeValues, voidConsumerInstanceField, WALKED, warnAsError, warnInvokeUnknownMethod, warnUndefinedVariable, warnUninitialized, warnUnknownMember, warnUnreachable, warnUnused, warnVoidUsed, writeImplicitClasses
Constructor and Description |
---|
Q2Translator(Language language,
SourceMessages messages,
NameLookup lexical) |
Modifier and Type | Method and Description |
---|---|
static boolean |
applyNullary(Expression exp)
If the argument has zero arguments, should we still apply it?
|
static Expression |
convertApply(ApplyExp exp) |
Expression |
makeBody(Expression[] exps)
Combine a 'body' consisting of a list of expression.
|
static java.lang.Object |
partition(java.lang.Object p,
Q2Translator tr)
Split list according to operator-precedence priorities.
|
Expression |
rewrite_pair(Pair p,
boolean function) |
Expression |
rewrite(java.lang.Object exp,
boolean function)
Re-write a Scheme expression in S-expression format into internal form.
|
void |
scanForm(java.lang.Object st,
ScopeExp defs) |
appendBodyValues, applyFunction, checkDefaultBinding, isApplyFunction, isSimpleApplyFunction
curScanNesting, define, define, define, errorIfNonEmpty, errorWithPosition, exp2Type, exp2Type, finishModule, getCompletions, getCurrentSyntax, getGlobalEnvironment, getScanContext, getScanContextStack, keywordsAreSelfEvaluating, listLength, lookup, lookupGlobal, lookupGlobal, lookupStandardEntity, makeBody, makePair, makeRenamedAlias, makeRenamedAlias, matches, matches, matches, matchQuoted, namespaceResolve, namespaceResolve, namespaceResolve, namespaceResolvePrefix, noteAccess, parse, popForms, popPositionOf, popRenamedAlias, popScanContext, processAccesses, pushForm, pushPositionOf, pushRenamedAlias, pushScanContext, renamedAliasCount, resolveModule, rewrite_body, rewrite_car_for_lookup, rewrite_car, rewrite_car, rewrite_car, rewrite_lookup, rewrite_with_position, rewrite, rewrite, rewriteBody, rewriteInBody, safeCar, safeCdr, scanBody, selfEvaluatingSymbol, setLine, setLine, setLineOf, stripSyntax, wrapSyntax
addClass, addMainClass, allocLocalField, asBooleanValue, cleanupAfterCompilation, compileConstant, compileConstant, compileToArchive, currentCallConvention, currentLambda, currentModule, currentScope, emitCoerceToBoolean, emitPushBoolean, error, error, error, error, findForImmediateLiterals, findNamedClass, freeLocalField, generateCheckMethod, generateCheckMethods, generateClassName, generateConstructor, generateConstructor, generateMainMethod, generatingApplet, generatingServlet, getBooleanOption, getBooleanOption, getCode, getColumnNumber, getConstructor, getConstructor, getCurrent, getEndColumn, getEndLine, getFileName, getForNameHelper, getLanguage, getLineNumber, getMessages, getMinfo, getModule, getModuleType, getPublicId, getSourceAbsPath, getStartColumn, getStartLine, getState, getSystemId, inlineOk, inlineOk, isInteractive, isPedantic, isStableSourceLocation, isStatic, letDone, letEnter, letStart, letVariable, letVariable, loadCallContext, loadClassRef, loopBody, loopCond, loopDone, loopEnter, loopRepeat, loopRepeatDone, loopStart, loopVariable, makeCoercion, makeCoercion, makeQuoteExp, makeRunnable, mangleURI, maxErrors, mustCompileHere, outputClass, pop, pop, process, push, push, pushNewModule, pushPendingImport, pushScope, registerForImmediateLiterals, resolve, restoreCurrent, setColumn, setCurrent, setCurrentScope, setEvalName, setFile, setInteractiveName, setLine, setLine, setLine, setLine, setLocation, setMessages, setModule, setModuleName, setPedantic, setPopCurrentScope, setPushCurrentScope, setSaveCurrent, setSharedModuleDefs, setState, setupLiterals, sharedModuleDefs, syntaxError, toString, usedClass, usingCallContext, usingCPStyle, usingTailCalls, warnAsError, warnInvokeUnknownMethod, warnUndefinedVariable, warnUninitialized, warnUnknownMember, warnUnreachable, warnUnused, warnVoidUsed
public Q2Translator(Language language, SourceMessages messages, NameLookup lexical)
public static java.lang.Object partition(java.lang.Object p, Q2Translator tr)
public Expression makeBody(Expression[] exps)
Translator
makeBody
in class Translator
public void scanForm(java.lang.Object st, ScopeExp defs)
scanForm
in class Translator
public Expression rewrite(java.lang.Object exp, boolean function)
Translator
rewrite
in class Translator
public Expression rewrite_pair(Pair p, boolean function)
rewrite_pair
in class Translator
public static boolean applyNullary(Expression exp)
public static Expression convertApply(ApplyExp exp)