Methods and apparatus for digital data processing with mutable inheritance
First Claim
1. In an execution environment for an object-oriented program, a method of manipulating objects, comprisinginstantiating an object A of class X, said instantiating step comprisingallocating memory for a header of object Aallocating memory for at least one ofone or more data elements inherited from class X and associated with object A, andone or more method members inherited from class X and associated with object A,allocating memory for one or more data elements inherited from of class Y which are absent from class X, andassociating those data elements with said header of object A.
2 Assignments
0 Petitions
Accused Products
Abstract
A method of automated workflow processing includes transforming an object, A1, which is of class X, into an object which is of class Y. The method includes the steps of separating existing data elements of A1 from the object itself, generating new data elements corresponding to class Y, inserting the new data elements into object A1, and computing values for the new data elements, possibly based on values of the old data elements. Other objects that referred to A1 before the transformation continue to do so afterwards. Values of data elements prior to transformation can be preserved, e.g., to facilitate review, to facilitate further transformation, and/or to facilitate back transformation.
114 Citations
20 Claims
-
1. In an execution environment for an object-oriented program, a method of manipulating objects, comprising
instantiating an object A of class X, said instantiating step comprising allocating memory for a header of object A allocating memory for at least one of one or more data elements inherited from class X and associated with object A, and one or more method members inherited from class X and associated with object A, allocating memory for one or more data elements inherited from of class Y which are absent from class X, and associating those data elements with said header of object A.
-
13. A method for transforming an object A of class X, which inherits data elements and method members from class X, into an object of class Y, comprising
allocating memory for one or more data elements and method members inherited from Y, associating object A with said allocated data elements inherited from Y and with one or more method members inherited from Y, and defining values for said allocated data elements inherited from Y as a function of any of (a) one or more values of data elements of object A inherited from class X, or (b) one or more default values, and dissociating object A from said data elements and method members inherited from class X.
-
17. A method of transforming an object A of class X, which inherits one or more data elements and one or more method members from class X, into an object that is of class Y, comprising the steps of:
-
generating one or more data elements inherited from class Y absent from class X, associating object A with said generated data elements inherited from class Y, and associating object A with one or more method members inherited from Y absent from class X. - View Dependent Claims (18, 19)
-
-
20. A method of transforming an object A of class X, which inherits from class X one or more data elements and one or more method members, into an object that is of a class Y, comprising the steps of
disassociating from object A one or more data elements inherited from class X that are absent from class Y, and disassociating from object A one or more method members inherited from class X that are absent from class Y.
Specification