Class Reference
IRIS for UNIX 2019.3
InterSystems: The power behind what matters   
Documentation  Search
  [ENSLIB] >  [%DeepSee] >  [SQL] >  [Parser]
Private  Storage   

class %DeepSee.SQL.Parser extends %RegisteredObject

Include %qaqplex

Inventory

Parameters Properties Methods Queries Indices ForeignKeys Triggers
8 24


Summary

Properties
%CurrentToken %Input %InputPart %LastToken %Position
%TokenList stack state

Methods
%AddToSaveSet %ClassIsLatestVersion %ClassName %ConstructClone
%DispatchClassMethod %DispatchGetModified %DispatchGetProperty %DispatchMethod
%DispatchSetModified %DispatchSetMultidimProperty %DispatchSetProperty %Extends
%GetParameter %GetTokenList %InitializeState %IsA
%IsModified %IsOperatorChar %IsOperatorToken %IsUserFunction
%New %NormalizeObject %ObjectModified %OnNew
%OriginalNamespace %PackageName %ParseSelect %PrintInput
%PrintTokenList %ProcessDsTEXT %ProcessSelectItem %RemoveFromSaveSet
%SerializeObject %SetInput %SetModified %Tokenize
%ValidateObject


Properties

• property %CurrentToken as %String;
Accumulator for the current token
• property %Input as %String [ MultiDimensional ];
• property %InputPart as %Integer [ InitialExpression = 0 ];
Current part of the input being processed
• 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 %Position as %Integer [ InitialExpression = 0 ];
Current position in the string
• property %TokenList as %DynamicArray;
The ordered list of complete tokens
• property stack as %DynamicArray;
Stack for changing state
• property state as %DynamicObject;
Any state information can be packed into this object, which can be pushed or popped from a stack if needed.

Methods

• method %GetTokenList() as %DynamicArray
Returns the current %TokenList array
• method %InitializeState() as %Status
Initialize the state object.
• method %IsOperatorChar(pChar As %String = "", Output pOpLength) as %Boolean
Test for a single-character operator
• method %IsOperatorToken(pToken As %String = "") as %Boolean
Test for an opertor token of arbitrary length
• method %IsUserFunction(pFunction, pLastToken=..%LastToken) as %Boolean
• method %OnNew(pInput As %String) as %Status
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.


Copyright (c) 2019 by InterSystems Corporation. Cambridge, Massachusetts, U.S.A. All rights reserved. Confidential property of InterSystems Corporation.