%DeepSee.Generator
class %DeepSee.Generator extends %Library.RegisteredObject
This class contains methods used by the various DeepSee code generators.This class should be consider to be INTERNAL to DeepSee; There are no methods intended for public use.
Method Inventory
- %BuildOrderedList()
- %DenormalizeType()
- %GetAncestors()
- %GetFactName()
- %GetSQLColumnName()
- %GetSQLFieldExpression()
- %GetSQLTableName()
- %IsString()
- %MakeDescription()
- %MakePropStorageDef()
- %MakeSQLCompute()
- %ParseExpression()
- %ParseTimeFunction()
Methods
classmethod %BuildOrderedList(ByRef pDepends, Output pList) as %Status
Internal method. Given a list of items of the form:
pDepends(item) = ""
pDepend(item,parent)
Return an ordered list with base items listed first.
pDepends(item) = ""
pDepend(item,parent)
Return an ordered list with base items listed first.
Convert a class name of the form %Library.xxx to %xxx.
classmethod %GetAncestors(pItem As %String, ByRef pDepends, Output pList, ByRef pVisited) as %Status
Internal method. Given an item within a dependency list,
return its set of ancestors (items with no further dependencies).
classmethod %GetFactName(pPrefix As %String, pName As %String, pSourceProperty As %String, pSourceExpression As %String = "", pFunction As %String = "", pRangeExpression As %String = "", pLinkClass As %String = "", pLinkProperty As %String = "", pTimeOffset As %String = "") as %String
Construct a Fact (property) name based on the given specifications.
pPrefix is a prefix, such as "Dx".
pName is the name of an element (such as a level).
pSourceProperty is a source property name.
pSourceExpression is a source expression used to derive the fact.
pFunction is a function (or name of time level class) applied to the fact.
pRangeExpression is a range expression applied to the fact.
pTimeOffset is a time offset applied to the fact.
pPrefix is a prefix, such as "Dx".
pName is the name of an element (such as a level).
pSourceProperty is a source property name.
pSourceExpression is a source expression used to derive the fact.
pFunction is a function (or name of time level class) applied to the fact.
pRangeExpression is a range expression applied to the fact.
pTimeOffset is a time offset applied to the fact.
Returns the SQL name of property pProp for class pClass.
classmethod %GetSQLFieldExpression(Output tSC As %Status, pClass As %String, pPropExpr As %String, pAllowStreams As %Boolean = 0) as %String
Convert a dot syntax reference to an SQL arrow syntax expression.
Returns the SQL table name for class pClass.
Test to determine if the current type is a string or is a custom datatype
with %String as a superclass
classmethod %MakeDescription(pMemberType As %String, pName As %String, pSource As %String = "", pNotes As %String = "") as %String
Return a description string for the given class member.
classmethod %MakePropStorageDef(pPropName As %String = "", ByRef pKnownValues, ByRef pNewValues) as %Dictionary.StorageDataValueDefinition
Produce a storage definition for the pPropName that can be inserted into the class's storage definition.
The array pKnownValues contains the previously compiled storage data, and is used
as a working index to avoid collisions in the storage definition. The pNewValues array
will contain the storage data for all properties actually encountered while working through
this current definition.
classmethod %MakeSQLCompute(Output pCode, pClass As %String, pMethod As %String, pBase As %String, ByRef pOptions) as %Status
Given a classname, method name, base expression, and optional list
of options, return a value that can be used as an SQL computed field
expression. Match the options with arguments in the functions formal spec.
classmethod %ParseExpression(pCode As %String, Output pResult As %String, Output pPropList As %String, pVarName As %String = "%source") as %Status
Take a ObjectScript expression and find all the occurences of
.Property, replace them and return a list of property references.
An expression can also contain a reference to a class method
of the cube class using the syntax %cube.Method. This is replaced later.
classmethod %ParseTimeFunction(pSpec As %String, Output pFuncName As %String, Output pOptions As %String) as %Status
Take a time function specification ("Function(p=1)") and find
from it the function name and list of options with their values.
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()