persistent class %Dictionary.CompiledMethod
extends %Persistent, %Dictionary.CompiledMethodQuery
parameter SQLENABLED = 1;
property Abstract
as %Boolean;
Specifies that this is an abstract method. An abstract method has no implementation and has no executable code generated for it. Abstract methods exist solely for the purpose of defining a method signature or interface that can be overridden and implemented within one or more subclasses.
property ClassMethod
as %Boolean;
Specifies that the method is a class method. Instance methods can only be invoked via an instantiated object while class methods can be directly invoked without an object instance.
property ClientMethod
as %Boolean;
If true this method is only available on the server, and is to be projected as a client method.
property ClientName
as %CacheString;
ClientName
property CodeMode
as %CacheString;
Specifies how a given method is implemented: as a routine call, lines of code to be compiled, an expression, or a method that will generate the resulting method or object.
property CompilerGenerated
as %Boolean;
CompilerGenerated
property DefaultArgs
as %CacheString;
DefaultArgs
property Description
as %CacheString;
Specifies a description of the method.
property ExternalProcName
as %CacheString;
Specifies the SQL procedure name in the foreign database.
property Final
as %Boolean;
Specifies that subclasses cannot override the implementation of the method.
property ForceGenerate
as %Boolean;
When true we always regenerate this method into each subclass even if normal rules would allow us to call the superclass implementation.
property FormalSpec
as %CacheString;
Specifies the list of arguments. Each argument is of the format [&|*][:][=] where & means pass-by-reference and * means output-only.
property FormalSpecParsed
as %CacheString;
FormalSpecParsed
property FormalType
as %CacheString;
FormalType
property GenerateAfter
as %CacheString;
In the case of a method generator method, specifies that the generator should be invoked after the listed methods are generated.
property Hash
as %CacheString;
Hash
property Id
as %Integer;
Id
property Implementation
as %Stream.TmpCharacter;
The code that is executed when the method is invoked. In the case of an expression method, this is an expression. In the case of a call method, this is the name of a Cache routine to call.
property InheritedId
as %Boolean;
InheritedId
property Internal
as %Boolean;
If true, then do not display this item in automatic documentation.
property KeywordError
as %Boolean;
KeywordError
property KeywordModified
as %Boolean;
KeywordModified
property Label
as %CacheString;
Label
property Language
as %CacheString [ SqlFieldName = _Language ];
The language used to implement this method.
property Name
as %Dictionary.CacheIdentifier;
The name of the method.
property NoContext
as %Boolean;
If true and in a datatype method, this prevents the * Set %val=..prop Set $this="" * that is added to the property method so you can override things like the Get/Set methods.
property NotForProperty
as %Boolean;
Deprecated.
property NotInheritable
as %Boolean;
Specifies that this method is not inherited in subclasses.
property OptimizedMAC
as %CacheString;
OptimizedMAC
property OptimizedRun
as %CacheString;
OptimizedRun
property Origin
as %CacheString;
Origin
property OriginalName
as %CacheString;
OriginalName
property PlaceAfter
as %CacheString;
Specifies that the class compiler should place this method after the listed methods in the routine it creates for the class.
property Private
as %Boolean;
Specifies that the method is private. Private methods can only be invoked by instance methods of this class or its subclasses.
property ProcedureBlock
as %CacheString;
Specifies that this method uses procedure block for method code.
property PublicList
as %CacheString;
Specifies the public list. This keyword is used only if the ProcedureBlock keyword is set to true.
property ReturnResultsets
as %Boolean;
If true this method may return zero, one, or more Resultsets in the %sqlcontext.
property ReturnType
as %Dictionary.CacheClassname;
Specifies the data type of the value returned by a call to the method. Setting ReturnType to an empty string specifies that there is no return value.
property ReturnTypeParams
as %CacheString;
A comma separated list of any parameters on the ReturnType keyword.
property RtnLabel
as %CacheString;
RtnLabel
property Runnable
as %Boolean;
Runnable
property RuntimeClient
as %Boolean;
RuntimeClient
property RuntimeCodeMode
as %CacheString;
CodeMode to use for generated methods
property RuntimeHash
as %CacheString;
RuntimeHash
property RuntimeLanguage
as %CacheString;
RuntimeLanguage
property SequenceNumber
as %Integer;
SequenceNumber
property ServerOnly
as %CacheString;
Specifies that a method will not be projected to a Java or C++ client.
property SoapAction
as %CacheString;
Lets you specify the HTTP SOAP action that must be used when invoking this web service method as a web method. For SOAP 1.1, the SOAP action is obtained from the SOAPAction HTTP header. For SOAP 1.2, it is obtained from the Content-Type HTTP header.
property SoapBindingStyle
as %CacheString;
Specifies what type of SOAP invocation is used for a web method. This keyword is ignored for non-web methods.
property SoapBodyUse
as %CacheString;
Specifies what kind of SOAP encoding is used for the inputs and outputs of a web method. This keyword is ignored for non-web methods.
property SoapMessageName
as %CacheString;
Specifies the name of the child element of the body of the response message for a web service method.
property SoapNameSpace
as %CacheString;
Overrides the SOAPNAMESPACE class parameter for this web service or web service client.
property SoapTypeNameSpace
as %CacheString;
Overrides the SOAPTYPENAMESPACE class parameter for this web service or web service client.
property SqlName
as %CacheString;
If this method is projected as an SQL stored procedure, then this name is used as the name of the stored procedure.
property SqlProc
as %Boolean;
Specifies that the method can be invoked as an SQL stored procedure. Only class methods can be called as SQL stored procedures.
property Stub
as %CacheString;
Stub
property StubMember
as %CacheString;
StubMember
property TagGenerator
as %CacheString;
TagGenerator
property UserActualType
as %CacheString;
UserActualType
property WebMethod
as %Boolean;
Specifies that a method can be invoked as a web method using the SOAP protocol.
property ZenMethod
as %Boolean;
Specifies that the method should be projected to the web client for use in the Zen framework.
relationship parent
as %Dictionary.CompiledClass [ Inverse = Methods,Cardinality = parent ];
Pointer to the containing parent object
classmethod %Exists(oid As %ObjectIdentity)
as %Boolean
Checks to see if the object identified by the OID oid exists in the extent.
Returns %Boolean TRUE if it exists, FALSE if it does not.
classmethod %LockId(id As %String, shared As %Boolean = 0)
as %Status
%LockId()
Obtain an exclusive or shared lock on the object identified by id. The type
of lock obtained is determined by shared. This method is normally generated by
the storage class for persistent classes using %Library.CacheStorage or %Library.CacheSQLStorage.
classmethod %UnlockId(id As %String, shared As %Boolean = 0, immediate As %Boolean = 0)
as %Status
%UnlockId()
Release an exclusive or shared lock on the object identified by id. The type
of lock released is determined by shared. If this method is not overridden
then the default implementation returns an error. This method is normally generated by
the storage class for persistent classes using %Library.CacheStorage or %Library.CacheSQLStorage.
index (IDKEY on Name) [IdKey];
trigger OnDelete
(BEFORE event DELETE) trigger OnInsertUpdate
(BEFORE event INSERT/UPDATE)