Package | Description |
---|---|
gnu.expr |
Supports
Expression ,
and various related classes need to compile programming languages. |
gnu.kawa.functions |
Various core run-time functions and operators.
|
gnu.kawa.reflect |
Contains classes to use reflection.
|
gnu.kawa.xml |
Classes for using XML within Kawa.
|
gnu.kawa.xslt | |
gnu.q2.lang |
Support for the experimental Q2 language.
|
gnu.xquery.lang | |
gnu.xquery.util | |
kawa.lang |
Core Kawa classes for Scheme and Lisp compile-time.
|
Modifier and Type | Field and Description |
---|---|
ApplyExp |
Declaration.firstCall
List of ApplyExp where this declaration is the function called.
|
ApplyExp |
ApplyExp.nextCall
The next ApplyExp in ((ReferenceExp)func).binding.firstCall list.
|
Modifier and Type | Method and Description |
---|---|
static ApplyExp |
Compilation.makeCoercion(Expression value,
Expression type)
Convenience method to make an Expression that coerces a value.
|
static ApplyExp |
Compilation.makeCoercion(Expression value,
Type type)
Convenience method to make an Expression that coerces a value.
|
ApplyExp |
ApplyExp.setFuncArgs(Expression func,
Expression[] args) |
ApplyExp |
ApplyExp.setFuncArgs(Procedure proc,
Expression[] args) |
Modifier and Type | Method and Description |
---|---|
void |
Declaration.addCaller(ApplyExp exp)
Add a call to the list headed by
firstCall . |
void |
ApplyExp.adjustSplice(ApplyExp src,
int delta)
Copy over splice and keyword start indexes.
|
boolean |
PrimProcedure.canCompile(ApplyExp exp) |
boolean |
PrimProcedure.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
Inlineable.compile(ApplyExp exp,
Compilation comp,
Target target) |
static void |
ApplyExp.compile(ApplyExp exp,
Compilation comp,
Target target) |
static void |
ApplyExp.compileArgsToContext(ApplyExp exp,
Method setupMethod,
Compilation comp) |
static void |
PrimProcedure.compileRestArg(Type arg_type,
ApplyExp exp,
int startArg,
int i,
Compilation comp) |
static Expression |
InlineCalls.inlineCall(LambdaExp lexp,
ApplyExp aexp,
boolean makeCopy)
Attempt to inline a function call.
|
Expression |
InlineCalls.maybeInline(ApplyExp exp,
Type required,
Procedure proc) |
void |
Declaration.noteValueFromApply(ApplyExp app,
int index) |
Expression |
ReferenceExp.validateApply(ApplyExp exp,
InlineCalls visitor,
Type required,
Declaration decl) |
Expression |
Expression.validateApply(ApplyExp exp,
InlineCalls visitor,
Type required,
Declaration decl)
Apply inlining transformations on a given ApplyExp.
|
Expression |
LambdaExp.validateApply(ApplyExp exp,
InlineCalls visitor,
Type required,
Declaration decl) |
Expression |
QuoteExp.validateApply(ApplyExp exp,
InlineCalls visitor,
Type required,
Declaration decl) |
protected Expression |
ANormalize.visitApplyExp(ApplyExp exp,
gnu.expr.ANormalize.Context context) |
protected R |
ExpVisitor.visitApplyExp(ApplyExp exp,
D d) |
protected Expression |
FindTailCalls.visitApplyExp(ApplyExp exp,
Expression returnContinuation) |
protected Expression |
ChainLambdas.visitApplyExp(ApplyExp exp,
ScopeExp scope) |
protected Expression |
InlineCalls.visitApplyExp(ApplyExp exp,
Type required) |
protected Expression |
PushApply.visitApplyExp(ApplyExp exp,
java.lang.Void ignored) |
protected Expression |
FindCapturedVars.visitApplyExp(ApplyExp exp,
java.lang.Void ignored) |
Expression |
InlineCalls.visitApplyOnly(ApplyExp exp,
Type required)
Visit an ApplyExp assuming function and arguments have been visited.
|
Modifier and Type | Class and Description |
---|---|
class |
CurryExp
A specialized ApplyExp class for curried function calls.
|
Modifier and Type | Method and Description |
---|---|
void |
CompileArith.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
MakeList.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
GetModuleClass.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
ValuesMap.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
AppendValues.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
CallCC.compile(ApplyExp exp,
Compilation comp,
Target target) |
static void |
CompileMisc.compileCallCC(ApplyExp exp,
Compilation comp,
Target target,
Procedure proc) |
static boolean |
CompileMisc.compileConvert(ApplyExp exp,
Compilation comp,
Target target,
Procedure procedure) |
static boolean |
CompileMisc.compileEq(ApplyExp exp,
Compilation comp,
Target target,
Procedure proc) |
void |
CompileArith.compileGeneric(ApplyExp exp,
Compilation comp,
Target target) |
static boolean |
CompileMisc.compileMakeDynamic(ApplyExp exp,
Compilation comp,
Target target,
Procedure procedure) |
static boolean |
CompileMisc.compileNot(ApplyExp exp,
Compilation comp,
Target target,
Procedure procedure) |
static boolean |
CompileMisc.compileNumberCompare(ApplyExp exp,
Compilation comp,
Target target,
Procedure procedure) |
static boolean |
CompileMisc.compileNumPredicate(ApplyExp exp,
Compilation comp,
Target target,
Procedure procedure) |
Expression |
CurryExp.validateApply(ApplyExp exp,
InlineCalls visitor,
Type required,
Declaration decl) |
static Expression |
CompileArith.validateApplyAdd(AddOp proc,
ApplyExp exp,
InlineCalls visitor) |
static Expression |
CompileMisc.validateApplyAppendValues(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileArith.validateApplyArithOp(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyCallCC(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyConstantFunction0(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyConvert(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileArith.validateApplyDiv(DivideOp proc,
ApplyExp exp,
InlineCalls visitor) |
static Expression |
CompileMisc.validateApplyFormat(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc)
Validate-apply handling for "format".
|
static Expression |
CompileMisc.validateApplyMakeDynamic(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyMakeProcedure(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyMakePromise(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileArith.validateApplyNot(ApplyExp exp,
int kind,
InlineCalls visitor) |
static Expression |
CompileProcess.validateApplyRunProcess(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc)
Type-check and optimize RunProcess (i.e.
|
static Expression |
CompileMisc.validateApplySimpleBoolean(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompilationHelpers.validateApplyToArgs(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure applyToArgs) |
static Expression |
CompileMisc.validateApplyValuesMap(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyWithExceptionHandler(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileValues.validateApplyWithValues(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileValues.validateCallWithValues(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileNamedPart.validateGetNamedInstancePart(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileNamedPart.validateGetNamedPart(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompilationHelpers.validateIsEqv(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileNamedPart.validateNamedPart(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileNamedPart.validateNamedPartSetter(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileNamedPart.validateSetNamedInstancePart(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileNamedPart.validateSetNamedPart(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompilationHelpers.validateSetter(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
Modifier and Type | Method and Description |
---|---|
static ApplyExp |
CompileReflect.inlineClassName(ApplyExp exp,
int carg,
InlineCalls walker)
Resolve class specifier to ClassType at inline time.
|
static ApplyExp |
MakeAnnotation.makeAnnotationMaker(Expression classRef) |
static ApplyExp |
SlotGet.makeGetField(Expression value,
java.lang.String fieldName)
Convenience method to make an Expression that gets the value of a field.
|
static ApplyExp |
Invoke.makeInvokeStatic(ClassType type,
java.lang.String name,
Expression... args)
Return an ApplyExp that will call a method with given arguments.
|
Modifier and Type | Method and Description |
---|---|
void |
TypeSwitch.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
SlotGet.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
Throw.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
InstanceOf.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
SlotSet.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
StaticSet.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
StaticGet.compile(ApplyExp exp,
Compilation comp,
Target target) |
static boolean |
CompileArrays.compileGet(ApplyExp exp,
Compilation comp,
Target target,
Procedure proc) |
static boolean |
CompileArrays.compileLength(ApplyExp exp,
Compilation comp,
Target target,
Procedure proc) |
static boolean |
CompileArrays.compileMake(ApplyExp exp,
Compilation comp,
Target target,
Procedure proc) |
static boolean |
CompileArrays.compileNew(ApplyExp exp,
Compilation comp,
Target target,
Procedure proc) |
static boolean |
CompileArrays.compileSet(ApplyExp exp,
Compilation comp,
Target target,
Procedure proc) |
protected void |
CompileBuildObject.init(ApplyExp exp,
InlineCalls visitor,
Type required,
ObjectType ctype,
ClassType caller) |
static ApplyExp |
CompileReflect.inlineClassName(ApplyExp exp,
int carg,
InlineCalls walker)
Resolve class specifier to ClassType at inline time.
|
static CompileBuildObject |
CompileBuildObject.make(ApplyExp exp,
InlineCalls visitor,
Type required,
ObjectType ctype,
ClassType caller) |
static Expression |
MakeAnnotation.validate(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileReflect.validateApplyInstanceOf(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileInvoke.validateApplyInvoke(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileReflect.validateApplySlotGet(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileReflect.validateApplySlotSet(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileReflect.validateApplyTypeSwitch(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileArrays.validateArrayGet(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileArrays.validateArrayLength(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileArrays.validateArrayNew(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileArrays.validateArraySet(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileInvoke.validateNamedInvoke(ApplyExp exp,
InlineCalls visitor,
ObjectType type,
java.lang.String name,
PrimProcedure[] methods,
Invoke iproc,
Type required) |
static Expression |
CompileReflect.validateThrow(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
Modifier and Type | Method and Description |
---|---|
void |
MakeText.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
CoerceNodes.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
NodeConstructor.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
SortNodes.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
UnionNodes.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
MakeText.compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
void |
MakeProcInst.compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
void |
MakeElement.compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
void |
DocumentConstructor.compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
void |
MakeAttribute.compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
void |
MakeWithBaseUri.compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
abstract void |
NodeConstructor.compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
static Symbol |
MakeElement.getTagName(ApplyExp exp) |
static Expression |
CompileXmlFunctions.validateApplyMakeUnescapedData(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileXmlFunctions.validateApplyTreeScanner(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
Modifier and Type | Method and Description |
---|---|
void |
ApplyTemplates.compileToNode(ApplyExp exp,
Compilation comp,
ConsumerTarget target) |
Modifier and Type | Method and Description |
---|---|
static Expression |
Q2Translator.convertApply(ApplyExp exp) |
Modifier and Type | Method and Description |
---|---|
protected Expression |
XQResolveNames.visitApplyExp(ApplyExp exp,
java.lang.Void ignored) |
protected Expression |
XQResolveNames.visitReferenceExp(ReferenceExp exp,
ApplyExp call) |
Modifier and Type | Method and Description |
---|---|
void |
OrderedMap.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
CastableAs.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
RelativeStep.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
ValuesFilter.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
CastAs.compile(ApplyExp exp,
Compilation comp,
Target target) |
static void |
CompileMisc.compileOrderedMap(ApplyExp exp,
Compilation comp,
Target target,
Procedure proc) |
static Expression |
CompileMisc.validateApplyCastableAs(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyCastAs(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyOrderedMap(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyRelativeStep(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc) |
static Expression |
CompileMisc.validateApplyValuesFilter(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc)
Inliner for the
ValuesFilter procedure. |
static Expression |
CompileMisc.validateArithOp(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc)
Inliner for the ArithOp procedure.
|
static Expression |
CompileMisc.validateBooleanValue(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc)
Inliner for the BooleanValue procedure.
|
static Expression |
CompileMisc.validateCompare(ApplyExp exp,
InlineCalls visitor,
Type required,
Procedure proc)
Inliner for the Compare procedure.
|
Modifier and Type | Method and Description |
---|---|
void |
GetFieldProc.compile(ApplyExp exp,
Compilation comp,
Target target) |
void |
SetFieldProc.compile(ApplyExp exp,
Compilation comp,
Target target) |