Skip to content

Rethink class hierarchy #1

Description

@NattyNarwhal

Currently ILEFunction and PGMFunction handle a lot of things like i.e. resolving or loading that could be reused across multiple instan, or split it up to better handle i.e. missing functionality without crashing.

Something like (hierarchy matches how you):

  • MIObject (wrap _RSLOBJ)
    • PGMFunction (wrap _PGMCALL)
    • ILEServiceProgram (wrap _ILELOAD), can be loaded from paths or MIObject
      • ILESymbol (wrap _ILESYM), could be used for either code or data
      • ILEFunction (wrap _ILECALL), could either wrap ILESymbol for code or be distinct _ILESYM caller

You'd want to handle the easy case of loading a program/library directly with these classes still, to avoid boilerplate for the simple case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions