class %Compiler.COS.Refactor
extends %Compiler.COS.Traveler
classmethod ChangeClassNameClose(ByRef qHandle As %Binary)
as %Status
classmethod ChangeClassNameExecute(ByRef qHandle As %Binary, oldName As %String, newName As %String, className As %String, ByRef tempName As %String, ByRef storagechanged As %Boolean)
as %Status
classmethod ChangeClassNameFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0)
as %Status
classmethod ChangeMemberNameClose(ByRef qHandle As %Binary)
as %Status
classmethod ChangeMemberNameExecute(ByRef qHandle As %Binary, oldName As %String, newName As %String, memclassName As %String, className As %String, ByRef tempName As %String, ByRef storagechanged As %Boolean)
as %Status
classmethod ChangeMemberNameFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0)
as %Status
classmethod ChangeMultClassNameClose(ByRef qHandle As %Binary)
as %Status
classmethod ChangeMultClassNameExecute(ByRef qHandle As %Binary, oldName As %String, newName As %String, projectName As %String)
as %Status
classmethod ChangeMultClassNameFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0)
as %Status
classmethod ChangeMultMemberNameClose(ByRef qHandle As %Binary)
as %Status
classmethod ChangeMultMemberNameExecute(ByRef qHandle As %Binary, oldName As %String, newName As %String, memclassName As %String, projectName As %String)
as %Status
classmethod ChangeMultMemberNameFetch(ByRef qHandle As %Binary, ByRef Row As %List, ByRef AtEnd As %Integer = 0)
as %Status
classmethod GetMemberOrigin(memberName As %String, className As %String)
as %String
classmethod RefactorStorageProperty(pClassname As %String, pPropName As %String, pNewName As %String, pNewSlot As %Boolean = 0, ByRef pChanged As %Boolean, pSave As %Boolean = 1)
as %String
RefactorStorageProperty takes a classname, property name, and a new property name and changes the name of the property to the new name everywhere in the storage definition.
The pNewSlot argument means if pNewSlot=1, don't overwrite the current property storage data location, but provide a new data slot with the new name.
The pChanged argument is passed by reference and will be set to 1 if any change is made to any Storage defined for this class. It will be 0 if no changes are made.
Returns %Status value
method oneClass(ByRef tempName As %String, bsave As %Boolean = 1, ByRef storagechanged As %Boolean)
as %Status
method oneClassold()
as %Status
method replaceClassName(parseTree As %Compiler.Util.ParseTree, newname As %Binary, nodePtr As %Integer, parentPtr As %Integer, ann As %String)
method replaceMemberName(parseTree As %Compiler.Util.ParseTree, newname As %Binary, nodePtr As %Integer)
method rf(ByRef source As %CacheString, pPackage As %CacheString = "", ByRef code As %CacheString, ByRef warning As %Status = 1)
as %Status
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 makehptinc.pl if you edit this
Used by %CPT.HPT.* classes.
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 name 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 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 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
note: HPT only supports the following sorts of Term as an object base: LvnRef, ParenExpr, SystemVar
(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
method v35(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
PPClass(35): ann name 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 v41(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
ListClassNameComponents(41): child list-ClassNameComponent
NAMES
method v5(parseTree As %Compiler.Util.ParseTree, visit As %Integer, nodePtr As %Integer, parentPtr As %Integer)
Expression(5): child Lhs-ExprOrTerm:1, optional ann string DyOp:1, optional child Rhs-ExprOrTerm:2
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
LOCAL/GLOBAL VARIABLES
enum LvnType: Private:1, Public:2, Parameter:3
query ChangeClassName(oldName As %String, newName As %String, className As %String, ByRef tempName As %String, ByRef storagechanged As %Boolean)
Selects
TYPE As %String, CLASSNAME As %String, OLDMEMBERNAME As %String, NEWMEMBERNAME As %String, LINENUMBER As %Integer, OPERATION As %Integer, LINECONTENT As %String
query ChangeMemberName(oldName As %String, newName As %String, memclassName As %String, className As %String, ByRef tempName As %String, ByRef storagechanged As %Boolean)
Selects
TYPE As %String, CLASSNAME As %String, OLDMEMBERNAME As %String, NEWMEMBERNAME As %String, LINENUMBER As %Integer, OPERATION As %Integer, LINECONTENT As %String
query ChangeMultClassName(oldName As %String, newName As %String, projectName As %String)
Selects
CLASSNAME As %String
query ChangeMultMemberName(oldName As %String, newName As %String, memclassName As %String, projectName As %String)
Selects
CLASSNAME As %String