Compile class definition files
- Last Updated: March 30, 2020
- 2 minute read
- OpenEdge
- Version 12.2
- Documentation
An ABL class definition represents a user-defined type
(object type) that encompasses all classes and interfaces in its
hierarchy. When you compile a class, the compiler does not only
compile the .cls file identified to the compiler.
Instead the compiler compiles all the .cls files
that compose its hierarchy. For each class definition file that
is in the class's hierarchy, the compiler generates in-memory r-code
and if the compiler SAVE option is specified, generates
an r-code file.
Thus, the files compiled by the compiler include:
- The requested class definition file
- Class definition files for the super classes in the class hierarchy
- Class definition files for any implemented interfaces for this class
- Class definition files for any implemented interfaces for classes in the class hierarchy
- Any include files that the class and interface files use
The compiler does not fully compile or generate an r-code file for other classes that are referenced within a class. The compiler instead inspects referenced class files to determine their external interfaces (their public data members, properties, methods, and events). This information is used to validate the use of these classes in the class being compiled.