Giter Site home page Giter Site logo

Comments (8)

kekyo avatar kekyo commented on July 21, 2024
  • Implement vtables.
  • Implement safe casts (castclass opcode) and track runtime types.

from il2c.

kekyo avatar kekyo commented on July 21, 2024
  • Basic vtable/vptr implemented at 037f128 (.NET Fringe Japan 2018 demonstration)
  • Only class type (Not supported interface type, will implement...)

from il2c.

kekyo avatar kekyo commented on July 21, 2024

First success for interface's delayed invoker. 4d6a27f

from il2c.

kekyo avatar kekyo commented on July 21, 2024

TODO:

  • Support castclass opcode.
  • Verify valuetype's handling.
  • Support reassign newslot's overrided method at existing interface type.
    • Newslot's overrided has to make new vptr space.
interface IHoge
{
    int Foo(int a, int b);
}

class HogeBase : IHoge
{
    int IHoge.Foo(int a, int b) { return a + b; }
}

class HogeDerived : HogeBase, IHoge
{
    // newslot's overrided
    int IHoge.Foo(int a, int b) { return a * b; }
}

from il2c.

kekyo avatar kekyo commented on July 21, 2024

6ca7f7b

  • Class virtual (vptr0) handling finished.

from il2c.

kekyo avatar kekyo commented on July 21, 2024

mote tests required.

from il2c.

kekyo avatar kekyo commented on July 21, 2024

857e730

Value type verified 🎉

from il2c.

kekyo avatar kekyo commented on July 21, 2024

9679f54

Multiple implemented interface tested.

from il2c.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.