JSAbrahams / mamba

🐍 The Mamba programming language, because we care about safety
MIT License
88 stars 4 forks source link

Build a context containing classes and their signatures #148

Closed JSAbrahams closed 4 years ago

JSAbrahams commented 5 years ago

Current Issue

Builds upon #147

High-level description of the feature

Do a preliminary analysis of all classes to get the names of all classes in a project and their accompanying functions.

note We do not have to check imports, though that should also be done at some point.

Description of potential implementation

At a step to the type checker stage which precedes the current one, and which builds a context with mappings from classes to their accompanying functions and signatures.

Classes should store which interfaces they implement (Mamba as of now does not support inheritance, this is part of a discussion). Function signatures should store function arguments, return type (if given), and errors the function may raise.