摘要:
A system and method for enabling a tracing of program execution within an object-oriented programming language environment. A new tracing class is created which is derived from the original class. When tracing is desired, a user creates instances of the tracing subclass instead of the original class and this instance is used in place of the original object. When tracing is not desired, a user merely creates and uses an instance of the original class. The new tracing subclass incorporates "print" statements, which permit observation of the control of code flow within the object.
摘要:
A system for creating before and after behavior upon invocation of a method in an object-oriented system. The framework provides metaclasses containing methods for dispatching a before method and an after method at the time of invocation of each client method in subclass instances. Object-oriented system properties of inheritance and encapsulation are supported as are derived metaclasses. Derivation ensures that the specification syntax for each class does not impact the expected result. The combination of explicit before after classes, dispatcher class, and derived metaclasses ensures that the system will have associative composition.
摘要:
A system, method, and program for deriving metaclasses of classes of objects defined according to traditional subclassing inheritance is disclosed, which uses a neutral set of information from which object support is enabled for any target language, including support between languages. The information defining a new class is parsed and compiled to generate a bindings file that is input along with method information to the target language compiler to create an object file. The object file is thereafter link edited to create an executable program. When this program is executed, each defined class of objects is implemented by a corresponding object, called a class object, whose parents are determined by its definition, and whose class is a metaclass that is automatically derived and created at runtime according to the parent classes of the class object.
摘要:
An initializer which is a dynamically resolved method for initializing an object in a multiple inheritance object oriented system is introduced. The initializer is introduced in an ancestor class and can be inherited and overridden by subclasses. An overridden initializer can be invoked on an instance of a subclass to initialize an object in the system.
摘要:
An information-handling system is disclosed that includes an improved application programmatic interface that allows application binary interfaces to be ported from one platform to another incompatible platform with minimal difficulty. Within the information-handling system, there are one or more processors; a storage system; one or more I/O controllers; a system bus connecting the processors, the storage system, and the I/O controller; and an operating system programmed for controlling the operation of the information-handling system. The application programmatic interface (API) operates in association with the operating program. The API provides a language and platform neutral interface for manipulating a particular variable list within the ABI and is portable from one platform to another.