Try OpenEdge Now
skip to main content
ABL Reference
Class Properties and Methods Reference : Syntax for describing class method parameter and property data types
 

Syntax for describing class method parameter and property data types

The syntax to describe the parameters of class methods in this section uses a variation of the ABL Parameter definition syntax, which includes the parameter mode and an AS option to indicate the ABL data type of the parameter. For example:
INPUT value AS DECIMAL
Note: This is similar to the parameter definition syntax used to list method prototypes in the Class Browser.
A similar syntax is used to describe the parameters of .NET methods, with an optional additional notation to indicate the corresponding .NET data type. You must know the explicit .NET data type of a .NET method parameter:
*To call an overloaded .NET method (see the Parameter passing syntax reference entry)
*When you override an inherited .NET method (see the METHOD statement reference entry)
*When you implement a method of a .NET interface (see the METHOD statement reference entry)
The ABL data type denoted by the AS option indicates how ABL treats the .NET parameter at run time. The parameter description uses the additional notation when the actual .NET data type of the parameter is a .NET mapped type other than the default match for the specified ABL data type. For information on matching .NET mapped types to ABL data types, see the Data types reference entry. If the .NET data type is not a mapped type or it is the default match for the specified ABL data type, this additional notation does not appear.
By convention throughout this section, when a particular parameter definition requires the additional notation, the syntax specifies the corresponding ABL data type and it explicitly the .NET data type mapping using an additional ABL keyword (AS data type) in parentheses (see Table 25. For example, the syntax for a .NET INPUT parameter that takes a single-precision floating-point number is represented as follows:
INPUT value AS DECIMAL (FLOAT)
Thus, the AS option for the ABL parameter definition syntax indicates the ABL DECIMAL data type, and the AS data type keyword FLOAT, which indicates an explicit .NET data type mapping to System.Single.
A similar notation is also used to document the data types of .NET method return values and .NET properties.
For more comprehensive information on mapping .NET data types to ABL data types, see OpenEdge Development: GUI for .NET Programming.