Skip to main content

%Compiler.COS.Traveler

This class can be used to test the traversal of a parse tree. It simply notifies the caller that a node is being descended through or being visited.

Method Inventory

Methods

method v1(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PlainBlock(1): child list-Line NOT GENERATED - you MUST run MakeIndexRoutine and MakeDefsInclude if you edit this Used by %CPT.HPT.* classes. next free nodetypes: 98 PROGRAM STRUCTURE
method v10(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
UnknownPreProcessorCommand(10): ann string Snarf:1
method v11(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandSET(11): ann keyword CommandName:1, optional child PostCondition-Expression:1, optional child Arguments-CommandSETArguments:2 SET COMMAND
method v12(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandSETArguments(12): child list-CommandSETArgument
method v13(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandSETArgument(13): child Lhs-CommandSETArgLhs:1, child Rhs-Expression:2
method v14(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandSETArgLhs(14): ann bool IsMultiple:1, child list-SETTarget
method v15(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandIFLine(15): ann keyword CommandName:1, optional child Conditions-ListExpressions:1, optional child RestOfLine-ListLineElements:2 nodeclass SETTarget: LvnRef | GvnRef | SystemFun | SystemVar | ObjectRef | SQLField IF LINE COMMAND
method v16(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListLineElements(16): child list-LineElement
method v17(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandIFBlock(17): child If-CommandIFBlockIf:1, optional child ListElseIf-ListCommandIFBlockElseIf:2, optional child Else-CommandIFBlockElse:3 IF CONSTRUCT COMMAND
method v18(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandIFBlockIf(18): ann keyword CommandName:1, optional child Conditions-ListExpressions:1, child BraceBlock:2 Conditions is omitted if empty
method v19(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandIFBlockElse(19): ann keyword CommandName:1, child BraceBlock:1
method v2(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PlainLine(2): optional ann name Label:1, optional child ListFormals:1, optional child Body-LineBody:2 CODE LINES
method v20(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandIFBlockElseIf(20): ann keyword CommandName:1, optional child Conditions-ListExpressions:1, child BraceBlock:2 Conditions is omitted if empty
method v21(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
BraceBlock(21): child list-Line
method v22(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListCommandIFBlockElseIf(22): child list-CommandIFBlockElseIf
method v23(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandWHILEBlock(23): ann keyword CommandName:1, child Conditions-ListExpressions:1, child BraceBlock:2 WHILE CONSTRUCT COMMAND
method v24(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandDOBlock(24): ann keyword CommandName:1, child BraceBlock:1, child WhilePart-CommandDOBlockWhile:2 DO CONSTRUCT COMMAND
method v25(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListExpressions(25): child list-OptExpression EXPRESSIONS
method v26(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Argument(26): ann string Snarf:1
method v27(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
LiteralString(27): ann string Value:1 nodeclass ExprOrTerm: Expression | Term nodeclass Term: LvnRef | LiteralString | LiteralNumber | ParenExpr | SystemVar | ObjectRef | GvnRef | SystemFun | MonOpExpression | PPFunc | Indirection | ExtrFunCall | SsvnRef | VisualM | SlotVar | MacroCall | SQLField VisualM b/w "_"
method v28(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
LiteralNumber(28): ann string Value:1
method v29(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ParenExpr(29): child Expr-Expression:1
method v3(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
LineBody(3): optional child ListLineElements:1
method v30(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemVar(30): ann string VarName:1 OBJECTS
method v31(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Subscripts(31): child ListExpressions:1
method v32(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ObjectRef(32): child ObjectRefBase:1, optional child ListMemberRefs:2
method v33(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListMemberRefs(33): child list-MemberRef nodeclass ObjectRefBase: Term | PPClass | DotDotBase | ParenObjectRefBase note: HPT only supports the following sorts of Term as an object base: LvnRef, ParenExpr, SystemVar, PPFuncSUPER (just to confirm: ObjectRef won't appear here either)
method v34(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
MemberRef(34): ann name MemberName:1, optional child ActualParameters:1, ann enum MemberType:2 enum MemberType: Method:1, Property:2, Unknown:3, Parameter:4 For a Parameter :- 1. The MemberName *does* include the "#" - this is so that absent-minded clients don't treat it as a method/property. 2. The ActualParameters will always be absent.
method v35(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PPClass(35): ann keyword ClassKeywordName:1, child ListClassNameComponents:1
method v36(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ClassNameComponent(36): ann name Name:1
method v37(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
DotDotBase(37): child MemberRef:1
method v38(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ActualParameters(38): child list-ActualParameter
method v39(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ByRefLvn(39): child LvnRef:1 nodeclass ActualParameter: Expression | ByRefLvn | Omitted
method v4(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandGeneral(4): ann keyword CommandName:1, optional child PostCondition-Expression:1, optional child Arguments-CommandGeneralArguments:2 COMMANDS not all commands have postconditions so an optional OmittedPostCondition child is used in these cases - no child will ever appear in the tree ... this means that we can fix the common annotation and child indices of non-construct command nodes :- CommandName is 1, PostCondition is 1, ListCommandArguments is 2 nodeclass Command: PlainCommand | BlockCommand nodeclass PlainCommand: CommandGeneral | CommandSET | CommandIFLine | CommandDO | CommandWRITE | CommandFORLine nodeclass BlockCommand: CommandIFBlock | CommandWHILEBlock | CommandDOBlock | CommandFORBlock | CommandTRYBlock
method v40(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Omitted(40):
method v41(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListClassNameComponents(41): child list-ClassNameComponent NAMES
method v42(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
GvnRef(42): optional ann name Name:1, optional child Environment:1, optional child Subscripts:2 the Name does not include the "^" Name and Environment are absent for a naked reference
method v43(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Environment(43): ann bool BracketsUsed:1, optional child Env1-Expression:1, optional child Env2-Expression:2
method v44(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandDO(44): ann keyword CommandName:1, optional child PostCondition-Expression:1, optional child Arguments-CommandDOArguments:2 DO COMMAND
method v45(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandDOArguments(45): child list-CommandDOArgument
method v46(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunGeneral(46): ann string FunName:1, child Arguments-ListExpressions:1 SYSTEM FUNCTIONS nodeclass SystemFun: SystemFunGeneral | SystemFunCASE | SystemFunDATA | SystemFunEXTRACT | SystemFunLIST | SystemFunLISTGET | SystemFunGET | SystemFunINCREMENT | SystemFunORDER | SystemFunPIECE | SystemFunSELECT
method v47(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandDOBlockWhile(47): ann keyword CommandName:1, child Conditions-ListExpressions:1
method v48(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunORDER(48): ann string FunName:1, child Reference:1, optional child Direction-Expression:2, optional child Data-Reference:3
method v49(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunDATA(49): ann string FunName:1, child Reference:1, optional child Data-Reference:2
method v5(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Expression(5): child Lhs-ExprOrTerm:1, optional ann keyword DyOp:1, optional child Rhs-ExprOrTerm:2
method v50(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunGET(50): ann string FunName:1, child Reference:1, optional child Default-Expression:2
method v51(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunSELECT(51): ann string FunName:1, child list-SystemFunSELECTItem
method v52(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunSELECTItem(52): child Condition-Expression:1, child Result-Expression:2
method v53(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunCASE(53): ann string FunName:1, child Base-Expression:1, child Items-ListSystemFunCASEItems:2
method v54(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListSystemFunCASEItems(54): child list-SystemFunCASEItem
method v55(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunCASEItem(55): optional child Test-Expression:1, child Result-Expression:2 the Test child can only be absent in the final Item in the parent list
method v56(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PPDim(56): ann keyword DimName:1, child ListLvns:1, optional child As-PPDimAs:2, optional child Assign-PPDimAssign:3 PREPROCESSOR nodeclass PreProcessorCommand: PPDim | PPDefine | UnknownPreProcessorCommand
method v57(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Lvn(57): ann name Name:1
method v58(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListLvns(58): child list-Lvn
method v59(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PPDimAs(59): ann keyword AsName:1, optional ann keyword CollectionTypeName:2, optional ann keyword OfName:3, optional ann enum CollectionType:4, child Class-ListClassNameComponents:1 CollectionTypeName and OfName are empty unless CollectionType is List or Array enum CollectionType: List:1, Array:2
method v6(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandGeneralArguments(6): child list-Argument
method v60(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PPDimAssign(60): child Expression:1
method v61(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
RawLine(61): ann string LineText:1 nodeclass Line: PreProcessorCommand | PlainLine | RawLine used when the line cannot be handled by HPT
method v62(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Embedding(62): ann string Language:1, ann string Opener:2, ann string Body:3, ann string BodyExtent:4, ann string Closer:5 nodeclass LineElement: Command | Embedding EMBEDDING LINES the Body has linefeed ($Char(10)) characters between lines the BodyExtent has the format $ListBuild(startline,startcol,endline,endcol) .. line/column numbers start at 1 .. endline/endcol is the position of the last character in the Body
method v63(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
MacroCall(63): ann keyword MacroName:1, optional child MacroArguments:1
method v64(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ParenObjectRefBase(64): child ObjectRefBase:1
method v65(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandWRITE(65): ann keyword CommandName:1, optional child PostCondition-Expression:1, optional child Arguments-CommandWRITEArguments:2 WRITE COMMAND
method v66(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandWRITEArguments(66): child list-CommandWRITEArgument
method v67(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
IOMnemonic(67): ann string MnemonicName:1, optional child ActualParameters:1 nodeclass Reference: LvnRef | GvnRef | SystemFun | ObjectRef | MacroCall I/O "/" followed by I/O mnemonic and optional arguments
method v68(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
IOFormat(68): child list-IOFormatItem
method v69(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
IOFormatLinefeed(69): "!", "#" or "?n" nodeclass IOFormatItem: IOFormatLinefeed | IOFormatFormfeed | IOFormatFormfeed2 | IOFormatTab
method v7(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListFormals(7): child list-Formal
method v70(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
IOFormatFormfeed(70):
method v71(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
IOFormatTab(71): child Position-Expression:1
method v72(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
IOAscii(72): child Ascii-Expression:1 "*n"
method v73(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
IOFormatFormfeed2(73): two successive formfeeds (difficult to split in either parser or weaver)
method v74(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListMacroArgs(74): child list-MacroArg nodeclass MacroArguments: ListExpressions | ListMacroArgs
method v75(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
MacroArg(75): ann string Text:1
method v76(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandFORBlock(76): ann keyword CommandName:1, child Impl-CommandFORBlockImpl:1 FOR CONSTRUCT COMMAND
method v77(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandFORBlockImplMain(77): optional child Args-CommandFORArguments:1, child BraceBlock:2 nodeclass CommandFORBlockImpl: MacroCall | CommandFORBlockImplMain
method v78(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandFORArguments(78): child Var-CommandFORVar:1, child RhsList-ListCommandFORRhs:2 FOR LINE/CONSTRUCT common definitions
method v79(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandFORLine(79): ann keyword CommandName:1, child Impl-CommandFORLineImpl:1 nodeclass CommandDOArgument: ObjectRef just that for now FOR LINE command
method v8(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Formal(8): ann bool Ampersand:1, ann name Name:2, ann bool Scoop:3, optional child Default-Expression:1 the default Expression will always be a Literal
method v80(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListCommandFORRhs(80): child list-CommandFORRhs nodeclass CommandFORVar: Indirection | ObjectRef | LvnRef
method v81(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandFORRhs(81): child From-Expression:1, optional child Increment-Expression:2, optional child To-Expression:3 if Increment is absent then To will be also
method v82(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandFORLineImplMain(82): optional child Args-CommandFORArguments:1, child LineBody:2 nodeclass CommandFORLineImpl: MacroCall | CommandFORLineImplMain
method v83(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandTRYBlock(83): ann keyword TryCommandName:1, child TryBlock-BraceBlock:1, ann keyword CatchCommandName:2, optional child CatchVar-CommandTRYBlockVar:2, child CatchBlock-BraceBlock:3 TRY CONSTRUCT COMMAND
method v84(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
CommandTRYBlockVar(84): optional ann keyword LeftParen:1, child LvnRef:1, optional ann keyword RightParen:2 either both Paren annotations are present or both are absent
method v85(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunINCREMENT(85): ann string FunName:1, child Reference:1, optional child Increment-Expression:2
method v86(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
MonOpExpression(86): ann keyword MonOp:1, child Expr-Expression:1
method v87(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PPFuncSUPER(87): ann keyword SuperKeywordName:1, child ActualParameters:1 nodeclass PPFunc: PPFuncSUPER
method v88(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunEXTRACT(88): ann string FunName:1, child Base-Expression:1, optional child StartCol-OffsetExpression:2, optional child EndCol-OffsetExpression:3 if StartCol is absent then EndCol is too
method v89(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Offset(89): ann keyword Star:1, optional ann keyword PlusMinus:2, optional child Expression:1 nodeclass OffsetExpression: Expression | Offset PlusMinus and Expression are either both absent or both present
method v9(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
LvnRef(9): ann name Name:1, ann enum LvnType:2, optional child Subscripts:1 nodeclass CommandWRITEArgument: IOMnemonic | IOFormat | IOAscii | Expression LOCAL/GLOBAL VARIABLES enum LvnType: Private:1, Public:2, Parameter:3
method v90(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Missing(90): nodeclass OptExpression: Expression | Missing
method v91(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PPDefine(91): ann keyword DefineName:1, ann keyword MacroName:2, optional child ListMacroFormals:1, optional ann keyword MacroDefinition:3, ann string MacroComments:4 the DefineName will either be "define" or "def1arg" (letter case will vary) if the MacroDefinition is multiline the lines are separated by '\n' (linefeed, ascii 10) even if it's multiline, the MacroDefinition won't include the "##continue" continuation indicators MacroComments is a linefeed-delimited list of ##; comments corresponding to the lines in MacroDefinition
method v92(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListMacroFormals(92): child list-MacroFormal
method v93(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
MacroFormal(93): ann name Name:1
method v94(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunLIST(94): ann string FunName:1, child Base-Expression:1, optional child StartIndex-OffsetExpression:2, optional child EndIndex-OffsetExpression:3 if StartIndex is absent then EndIndex is too
method v95(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunLISTGET(95): ann string FunName:1, child Base-Expression:1, optional child Index-OffsetExpression:2, child Default-Expression:3
method v96(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SystemFunPIECE(96): ann string FunName:1, child Base-Expression:1, child Delimiter-Expression:2, optional child StartIndex-OffsetExpression:3, optional child EndIndex-OffsetExpression:4 if StartIndex is absent then EndIndex is too
method v97(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
SQLField(97): ann keyword FieldName:1, optional ann keyword Star:2, optional ann keyword TriggerQualifier:3 Other A SQLField will only be recognized by the parser if IPARSE_COS_SQLFIELDS or IPARSE_COS_SQLTRIGGER is set - 'Moniker' argument for those flags: "!FLAGS+2" and "!FLAGS+4" The TriggerQualifier part needs IPARSE_COS_SQLTRIGGER ("!FLAGS+4") The 'Star' annotation is to aid accurate regeneration and should be ignored by parse tree scanners
method visit(parseTree As %Compiler.Informix.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
This method could be included in a separate class but to keep visit() visit a parse tree node. This method is just a stub that could be used to perform the polymorphic dispatch based on the node type. The accept() method of the parse tree will actually dispatch based on node type.
method visited()
visited() This is the exit interview - the parse tree has successfully visited all nodes in the tree and is ready to finish. This is the last visit method to be called. It is a good place to put end of code generation cycle processing.

Inherited Members

Inherited Properties

Inherited Methods

Subclasses

FeedbackOpens in a new tab