%Library.COSCallout
class %Library.COSCallout extends %Library.RegisteredObject
Transform COS source code to a parse tree
Internal ISC code, not for customer use - these interfaces may change without warning
Property Inventory (Including Private)
Method Inventory (Including Private)
- %OnClose()
- Compile()
- ConfigName()
- ConfigPath()
- InvokeDLL()
- PathToDLL()
- SetDefaultBinDir()
- ZF5()
- ZF6()
Properties (Including Private)
The directory for CacheObjectScript.DLL.
Defaults to the instance's "Bin" directory - change it if you want to debug a different version of the DLL.
How we call the DLL
Takes one of the following values :-
1 - use $ZF(-3) ... handy for debugging the DLL because it doesn't stay loaded
2 - use $ZF(-4)/$ZF(-5) ... to cache the DLL handle
3 - use $ZF(-4)/$ZF(-6) ... the default - there's normally no reason to change it
Initialised to 3
The cached DLLHandle (used only when DLLCallMode=2)
Set to a result code string
Mainly of use to Intersystems support.
Methods (Including Private)
The return value of this method is ignored.
Convert the given COS source code to a parse tree
SourceStream is a stream containing the source code
ErrorsStream is a stream to which any error messages are written
The return value is 1 on success, 0 on failure
If 0 is returned the caller should see the DLLResultCode property for information about failure.
CacheObjectScript.DLL must be in the directory given by the BinDir property. By default this points to the instance's "Bin" directory.
In the example below SourceIn and ErrorsOut are streams. SourceIn supplies the source code and ErrorsOut receives any error messages.
Set TT=##class(%Library.COSCallout).%New() Set Ret=TT.Compile(SourceIn,ErrorsOut) If 'Ret Write "Fatal error: ",TT.DLLResultCode,! ZTrap Do Errors.Rewind() If 'Errors.AtEnd { //... show Errors } Else { //... use tree }
Helper function to return the InterSystems IRIS configuration name.
Helper function to return the InterSystems IRIS configuration path.
Invoke the CacheObjectScript DLL function (DLLFunction), passing DLLArgs.
Returns what the $ZF call into the DLL returns, or something in the same format :-
$LISTBUILD(ZFOK, $LISTBUILD(Lang1, Lang2, ...), ColoringErrors, DLLResultCode)
Return the path to the DLL
Set the default for the instance's "Bin" directory
Sets failed to 1 if the $ZF(-5,..) call fails, otherwise sets it to 0 and returns the DLL return code
Sets failed to 1 if the $ZF(-6,..) call fails, otherwise sets it to 0 and returns the DLL return code
Inherited Members
Inherited Methods (Including Private)
- %AddToSaveSet()
- %ClassIsLatestVersion()
- %ClassName()
- %ConstructClone()
- %ConstructCloneInit()
- %DispatchClassMethod()
- %DispatchGetModified()
- %DispatchGetProperty()
- %DispatchMethod()
- %DispatchSetModified()
- %DispatchSetMultidimProperty()
- %DispatchSetProperty()
- %Extends()
- %GetParameter()
- %IsA()
- %IsModified()
- %New()
- %NormalizeObject()
- %ObjectModified()
- %OnAddToSaveSet()
- %OnConstructClone()
- %OnNew()
- %OnValidateObject()
- %OriginalNamespace()
- %PackageName()
- %RemoveFromSaveSet()
- %SerializeObject()
- %SetModified()
- %ValidateObject()