You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Oct 14, 2018. It is now read-only.
libanalysis needs to be populated with code that does the following: given a set of Orange Modules, it should check each module for type errors. If the program is well typed, type info should be generated for each module.
Type info has a set of contexts, which contain the types of nodes inside that context. Aside from the global context, a new context is generated for each construct that is generic. Contexts are stored in a hierarchy, since generic functions/classes/etc can be nested.
A context has:
an id
the list of types that would resolve the generic class/interface/etc
the parent id
the type table for this context
A row in the type table has:
a node id
the type of the node
Referencing functions, classes, etc outside of the current Orange Module (e.g., in another file or library) are not added to the type info for the current module, but the types that are returned by those nodes are still used. If those nodes outside of the current module haven't had their types generated yet, they will determined at this point.
The text was updated successfully, but these errors were encountered:
rfratto
changed the title
Create code analysis and type resolution phase
Create libanalysis for Orange Mini
Jan 22, 2017
libanalysis
needs to be populated with code that does the following: given a set of Orange Modules, it should check each module for type errors. If the program is well typed, type info should be generated for each module.Type info has a set of contexts, which contain the types of nodes inside that context. Aside from the global context, a new context is generated for each construct that is generic. Contexts are stored in a hierarchy, since generic functions/classes/etc can be nested.
A context has:
A row in the type table has:
Referencing functions, classes, etc outside of the current Orange Module (e.g., in another file or library) are not added to the type info for the current module, but the types that are returned by those nodes are still used. If those nodes outside of the current module haven't had their types generated yet, they will determined at this point.
The text was updated successfully, but these errors were encountered: