%DeepSee.SQL.Parser
class %DeepSee.SQL.Parser extends %Library.RegisteredObject
Include %qaqplexProperty Inventory
Method Inventory
- %GetTokenList()
- %InitializeState()
- %IsOperatorChar()
- %IsOperatorToken()
- %IsUserFunction()
- %OnNew()
- %ParseSelect()
- %PrintInput()
- %PrintTokenList()
- %ProcessDsTEXT()
- %ProcessSelectItem()
- %SetInput()
- %Tokenize()
Properties
property %CurrentToken as %String;
Accumulator for the current token
Property methods: %CurrentTokenDisplayToLogical(), %CurrentTokenGet(), %CurrentTokenIsValid(), %CurrentTokenLogicalToDisplay(), %CurrentTokenLogicalToOdbc(), %CurrentTokenNormalize(), %CurrentTokenSet()
property %Input as %String [ MultiDimensional ];
Property methods: %InputDisplayToLogical(), %InputGet(), %InputIsValid(), %InputLogicalToDisplay(), %InputLogicalToOdbc(), %InputNormalize(), %InputSet()
property %InputPart as %Integer [ InitialExpression = 0 ];
Current part of the input being processed
Property methods: %InputPartDisplayToLogical(), %InputPartGet(), %InputPartIsValid(), %InputPartLogicalToDisplay(), %InputPartNormalize(), %InputPartSet()
property %LastToken as %String;
Container for the last complete token. This is used for looking back when
there are multiple tokens in a succession.
Property methods: %LastTokenDisplayToLogical(), %LastTokenGet(), %LastTokenIsValid(), %LastTokenLogicalToDisplay(), %LastTokenLogicalToOdbc(), %LastTokenNormalize(), %LastTokenSet()
property %Position as %Integer [ InitialExpression = 0 ];
Current position in the string
Property methods: %PositionDisplayToLogical(), %PositionGet(), %PositionIsValid(), %PositionLogicalToDisplay(), %PositionNormalize(), %PositionSet()
property %TokenList as %DynamicArray;
The ordered list of complete tokens
Property methods: %TokenListGet(), %TokenListGetObject(), %TokenListGetObjectId(), %TokenListGetSwizzled(), %TokenListIsValid(), %TokenListNewObject(), %TokenListSet(), %TokenListSetObject(), %TokenListSetObjectId(), %TokenListUnSwizzle()
property stack as %DynamicArray;
Stack for changing state
Property methods: stackGet(), stackGetObject(), stackGetObjectId(), stackGetSwizzled(), stackIsValid(), stackNewObject(), stackSet(), stackSetObject(), stackSetObjectId(), stackUnSwizzle()
property state as %DynamicObject;
Any state information can be packed into this object, which can be pushed or popped from a stack if needed.
Property methods: stateGet(), stateGetObject(), stateGetObjectId(), stateGetSwizzled(), stateIsValid(), stateNewObject(), stateSet(), stateSetObject(), stateSetObjectId(), stateUnSwizzle()
Methods
method %GetTokenList() as %DynamicArray
Returns the current %TokenList array
method %InitializeState() as %Status
Initialize the state object.
Test for a single-character operator
Test for an opertor token of arbitrary length
method %IsUserFunction(pFunction, pLastToken=..%LastToken) as %Boolean
Optionally set the input as the object is created.
classmethod %ParseSelect(pSelectTokens As %DynamicArray, Output pParsedTree, Output pSpecialTokens) as %Status
Parse SELECT list for a DeepSee listing. The output pParsedTree is a %DynamicArray containing the individual select terms.
method %PrintInput(pVerbose=1) as %String
Print the current inputas set by %SetInput(). If pVerbose = 1, print the string
to the current device.
method %PrintTokenList(pVerbose=1) as %String
method %ProcessDsTEXT(pTextMacroTokens As %DynamicArray, pDomain As %String = "", Output pStatus, pLocalize As %Boolean = 0) as %String
Extract the display header from the $$$TEXT macro. The parameter pLocalize allows the caller to request translation
of the header string to the current locale. A default domain for this translation can be supplied via
pDomain. When defined, this default is used if there is no domain explicitly declared as the
second argument of $$$TEXT.
method %ProcessSelectItem(pSelectItemTokens As %DynamicArray, pHeaderPos, pDomain As %String = "", Output pSelectItemPair, pLocalize As %Boolean = 0) as %Status
Reassemble the select Item in both the logical and display versions. The parameter pLocalize allows the caller to request translation
of the header string to the current locale. A default domain for this translation can be supplied via
pDomain. When defined, this default is used if there is no domain explicitly declared as the
second argument of $$$TEXT.
method %SetInput(pInput) as %Status
Set the current input to be analyzed.
method %Tokenize() as %Status
Walk through the string per character and tokenize.
Inherited Members
Inherited Methods
- %AddToSaveSet()
- %ClassIsLatestVersion()
- %ClassName()
- %ConstructClone()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %IsModified()
- %New()
- %NormalizeObject()
- %ObjectModified()
- %OriginalNamespace()
- %PackageName()
- %RemoveFromSaveSet()
- %SerializeObject()
- %SetModified()
- %ValidateObject()