Runtime polymorphism
First Claim
1. One or more processor-accessible storage media comprising processor-executable instructions that, when executed by a processor, direct a computing device to perform actions comprising:
- retrieving one or more mapping descriptions from a runtime casting description, the one or more mapping descriptions defining feature-level mappings to create a casted object including casted features from a source object including source features independent of type information of the source object, wherein the features from the source object comprise a method feature or a property feature;
casting a first object of a first type and a second object of a second type to a first casted object of a third type and to a second casted object of the third type, wherein the first type and the second type are different from the third type,wherein casting the first object of the first type to the first casted object of the third type includes casting a subset of features of the first object of the first type to the first casted object of the third type using the retrieved mapping descriptions from the runtime casting description, wherein the at least one of the features of the first casted object of the first type has a functionality different than a corresponding casted feature of the first casted object of the third type;
wherein casting a second object of the second type to the second casted object of the third type includes casting a subset of features of the second object of the second type to the second casted object of the third type using the retrieved mapping descriptions from the runtime casting description;
applying one or more algorithms to the first casted object of the third type and to the second casted object of the third type;
detecting a change in the second casted object;
propagating the change to the first casted object; and
modifying the first object responsive to the change propagated to the first casted object in the propagating action.
2 Assignments
0 Petitions
Accused Products
Abstract
Runtime polymorphism may be enabled with metadata that is usable for casting objects to casted objects. In an exemplary media implementation, processor-executable instructions cause operations including: discover at least one type of an object while in a runtime environment; and create a casted object from the object by casting the object to the casted object using metadata. An exemplary computing device implementation includes: one or more processors; and one or more media in operative communication therewith, the one or more media including: an object of a first type; metadata that is capable of being used to cast unknown objects in a runtime environment; and processor-executable instructions that, when executed, cause the one or more processors to perform an action including: casting the object of the first type to a casted object of a second type using the metadata in the runtime environment, the first type differing from the second type.
-
Citations
10 Claims
-
1. One or more processor-accessible storage media comprising processor-executable instructions that, when executed by a processor, direct a computing device to perform actions comprising:
-
retrieving one or more mapping descriptions from a runtime casting description, the one or more mapping descriptions defining feature-level mappings to create a casted object including casted features from a source object including source features independent of type information of the source object, wherein the features from the source object comprise a method feature or a property feature; casting a first object of a first type and a second object of a second type to a first casted object of a third type and to a second casted object of the third type, wherein the first type and the second type are different from the third type, wherein casting the first object of the first type to the first casted object of the third type includes casting a subset of features of the first object of the first type to the first casted object of the third type using the retrieved mapping descriptions from the runtime casting description, wherein the at least one of the features of the first casted object of the first type has a functionality different than a corresponding casted feature of the first casted object of the third type; wherein casting a second object of the second type to the second casted object of the third type includes casting a subset of features of the second object of the second type to the second casted object of the third type using the retrieved mapping descriptions from the runtime casting description; applying one or more algorithms to the first casted object of the third type and to the second casted object of the third type; detecting a change in the second casted object; propagating the change to the first casted object; and modifying the first object responsive to the change propagated to the first casted object in the propagating action. - View Dependent Claims (2, 3)
-
-
4. A computing device having storage media, the storage media comprising:
-
metadata comprises a runtime casting description that defines runtime polymorphism with feature-level mappings that is capable of being interpreted to cast object to casted objects; a first object; a second object; a first casted object created from casting a subset of features of the first object and including a new feature different than features included in the first object, the first casted object created by using the metadata, the features of the first object comprising a method or a property feature, wherein the first object and the first casted object together comprise a programmatic object representation, the programmatic object representation comprises an enhanced casted object; a second casted object created from casting at least one feature of the second object using the metadata; and algorithmic code that is adapted to manage the first object and the second object via the first casted object and the second casted object, wherein the algorithmic code comprises one or more rules that are run against the first casted object and against the second casted object to detect changes in one casted object and to propagate the detected changes to the other casted object. - View Dependent Claims (5)
-
-
6. A method implemented on a computing device by a processor configured to execute instructions that, when executed by the processor, direct the computing device to perform acts comprising:
-
retrieving at least one mapping description from a runtime casting description, the at least one mapping description defining a feature-level mapping for creation of a casted object; creating the casted object from a source object including source features by implementing feature casting operations in accordance with the at least one mapping description; wherein implementing comprises; mapping a feature from the source object to the casted object in accordance with the at least one mapping description, wherein the mapping declares that at least one feature of the casted object is to have a functionality differing from a corresponding feature of the object, filtering at least one method of the source object in accordance with the at least one mapping description, mapping one or more predetermined features of the source object to at least one casted feature for the casted object in accordance with the at least one mapping description, including a new feature different than features included in the source object to the casted object, and wherein the at least one mapping description defines a mapping from a property feature of the source object to a method feature of the casted object, a mapping from a method feature of the object to a property feature of the casted object.
-
-
7. One or more processor-accessible storage media comprising processor-executable instructions that, when executed, direct a computing device to perform actions comprising:
-
casting a plurality of source objects of different types into a single object of a casted type based on a runtime casting description, wherein each of the plurality of source objects includes a plurality of features, the plurality of features comprising at least one method feature and at least one property feature, wherein the plurality of source objects comprise at least a first source object of a first type and a second source object of a second type, the first type and the second type being different, and wherein the casting comprises; for each of the plurality of source objects, casting at least one feature thereof into the single object based on the runtime casting description; casting a first feature of the first source object into a first casted feature of the single object; casting a second feature of the second source object into a second casted feature of the single object; casting a feature of the first source object and a feature of the second source object into a casted feature of the single object.
-
-
8. One or more processor-accessible storage media comprising processor-executable instructions that, when executed, direct a computing device to perform actions comprising:
casting a plurality of source objects to one or more casted objects of a casted type regardless of types of the plurality of source objects, wherein; the casting is based on respective features and independent of a respective type of each of the plurality source objects, the respective features comprising a method feature and a property feature, the plurality of source objects comprise a first object of a first type and a second object of a second type, the one or more casted objects comprise a first casted object of the casted type and a second casted object of the casted type, the first type and the second type are different from the casted type, a subset including fewer than all of the features of the first object of the first type are casted to the first casted object of the casted type using a runtime casting description, a subset including fewer than all of the features of the second object of the second type are casted to the second casted object of the casted type using the runtime casting description; and the runtime casting description comprises casting operations comprising; a casting operation from a first source feature of a source object of the plurality of source objects to a casted feature of a casted object of the one or more casted objects, a casting operation from a second source feature of the source object of the plurality of source objects to nothing in the casted object of the one or more casted objects, a casting operation from multiple source features of the source object of the plurality of source objects to a single feature of the casted object of the one or more casted objects, and a casting operation enabling a new feature to be defined in the casted object of the one or more casted objects that is different than a feature or a function of features of the source object of the plurality of source objects. - View Dependent Claims (9, 10)
Specification