• 
      

    Add unit tests for base class support, and fix some issues.

    Review Request #12916 — Created March 24, 2023 and submitted — Latest diff uploaded

    Information

    Spina
    master

    Reviewers

    This change adds a new test suite covering spinaBaseClassExtends()
    (and a lot of common code shared with @spina).

    In the process, some typing and runtime issues were found and fixed:

    • Mixins can now mix in static members.

    • Mixins are now applied before processing attributes, allowing for
      static members to be mixed in and processed.

    • An attribute was unnecessarily set twice when copying static members
      to the prototype.

    • extend() is now part of the SpinaClass interface.

    • Some functions now reference PartialSpinaClass rather than
      SpinaClass, when working with a class that hasn't yet been fully
      processed.

    Unit tests pass.

    Commits

    Files