A Reference class is a class that contains more than one property. The properties of a reference class object are accessed with the syntax Identifier.property. The variable used as the identifier of a reference class may contain some or all of the properties of the object, or may be a pointer to other data structures that contain some or all of the properties. The implementation is dependent on the class itself and the optimization logic associated with the code generator.
The following guidelines apply to reference classes:
All reference classes can be implicitly cast into their ancestor classes.
An object of a reference class can be explicitly cast to another reference class or primitive class, if a method exists to cast it.
Reference classes cannot be declared as Public scope and must be passed between procedures as parameters.
Only the = and '= operators can be used on a reference class object.
Multiple references to a reference class object refer to the same object and return a "true" value to an equality test (e.g., a=b is true if it is the same object).
The length of a reference object is subject to the implementation of the length method within that class hierarchy.
A reference class object cannot be null.
The following reference classes exist in PSL:
Class |
Description |
Contains methods used to retrieve Record<class> objects from within a process' local memory, calling the Db.getRecord method if a record does not exist in the cache. | |
Provides a runtime description of the class methods and properties. | |
Contains properties that enable programmers to reference the attributes of a table column. | |
Contains the set of all records within the database. | |
Contains the set of all records of a single table that satisfy a common condition. | |
Contains properties and methods that enable programmers to identify and throw exceptions. The properties describe the exception and the location in the code where it occurred. | |
Contains methods used to create XML documents that are typically used with web access interfaces. | |
Provides methods and properties for data input and output. | |
Contains methods used to add and locate elements in a list. | |
The superclass of all of the classes in PSL. | |
Defines objects based on database table definitions. This class contains all the methods used by the database tables. | |
Subset of the Record class. It is also the account superclass (ancestor) of the RecordDEP and RecordLN classes. The RecordACN class exists exclusively to provide methods and properties for the ACN table. | |
The customer record class. The RecordCIF class exists exclusively to provide methods and properties for the CIF table. | |
The deposit record class. It is a subset of the RecordACN class. The RecordDEP class exists exclusively to provide methods and properties for the DEP table. | |
The loan record class. It is a subset of the RecordACN class. The RecordLN class exists exclusively to provide methods and properties for the LN table. | |
Defines the set of rows and columns resulting from a database selection operation. | |
Treats a delimited string as a row from a table, allowing reference to elements by "column name". | |
Contains methods that evaluate or produce data during the execution of the code generated by PSL, or perform other “runtime” actions, such as the Transaction Processing methods. Generally the methods found in this class cannot be pre-compiled by PSL. | |
Deprecated. Contains properties that describe a DQ schema table. | |
Provides a description of a DATA-QWIK table. | |
Contains properties and methods associated with transaction processing. |