Patent Document ID: 9183001
Application ID: 13350552

Base Claim:
1. At a computer system including at least one processor and a memory, a computer-implemented method for providing a simulation of a type-level construct on an interface instance, the method comprising: instantiating an interface instance comprising an instance object and one or more instance members; instantiating a separate typed object which is configured to maintain one or more simulated type-level parameterized constructors, the simulated type-level parameterized constructors having associated parameters; scanning a plurality of interface instances to identify an interface instance that provides a method having a specified set of parameters, the identified method being matched to the parameters of the simulated type-level parameterized constructors to determine an appropriate interface instance to dispatch method calls against; associating the instantiated interface instance with the separate typed object, wherein the separate typed object is configured to route method invocations for the identified method from the interface instance to one or more simulated type-level parameterized constructors and static members of the type; and simulating a type-level parameterized constructor by redirecting attempts to execute the static members to the static members' associated interface instance, the redirection allowing a runtime to simulate the presence of static members over the top of the interface instance associated with the separate typed object by at least: identifying a callback method on the interface instance; creating a delegate type with an invoke method that has an identical signature to a signature of the callback method; upon determining that the delegate has been invoked, forwarding the callback method to an application binary interface (ABI) method; and returning the result of the callback method as the result of the delegate invocation, such that the runtime provides a delegate API experience over an interfaced ABI.

---

Claim 6:
6. The method of claim 1 , wherein the simulated type-level parameterized constructors simulate delegate objects over the interface instance.