mirror of
https://codeberg.org/ProgramSnail/lang_2023.git
synced 2026-01-25 13:07:13 +00:00
likn_symbols _visitor done, but it is not tested yet
This commit is contained in:
parent
3c643d2759
commit
3d74b1383e
10 changed files with 236 additions and 427 deletions
|
|
@ -297,6 +297,7 @@ struct AliasDefinitionStatement {
|
|||
std::vector<AbstractTypeIdentifier> parameters;
|
||||
std::unique_ptr<ParametrizedType> value;
|
||||
|
||||
std::vector<utils::IdType> parameter_graph_ids_;
|
||||
utils::IdType type_id_;
|
||||
};
|
||||
|
||||
|
|
@ -321,6 +322,7 @@ struct FunctionDefinitionStatement {
|
|||
SuperExpression value;
|
||||
|
||||
utils::IdType function_id_;
|
||||
std::vector<utils::IdType> argument_graph_ids_;
|
||||
};
|
||||
|
||||
struct TypeDefinitionStatement {
|
||||
|
|
@ -335,6 +337,7 @@ struct AbstractTypeDefinitionStatement {
|
|||
enum { Basic, Abstract } modifier;
|
||||
std::unique_ptr<AnnotatedType> type;
|
||||
|
||||
utils::IdType type_graph_id_;
|
||||
utils::IdType type_id_;
|
||||
};
|
||||
|
||||
|
|
@ -362,6 +365,8 @@ struct TypeDefinition {
|
|||
struct AnnotatedAbstractType {
|
||||
AbstractTypeIdentifier type;
|
||||
std::vector<TypeclassUsage> typeclasses;
|
||||
|
||||
utils::IdType type_graph_id_;
|
||||
};
|
||||
|
||||
// ----------------- Flow control -----------------
|
||||
|
|
@ -518,6 +523,8 @@ struct TypeExpression {
|
|||
std::vector<TypeSubExpression> namespaces;
|
||||
AnyTypeIdentifier type;
|
||||
std::optional<size_t> array_size; // if array; 0 - dynamic size
|
||||
|
||||
utils::IdType type_id_;
|
||||
};
|
||||
|
||||
struct ExtendedScopedAnyType {
|
||||
|
|
@ -535,6 +542,8 @@ struct ParametrizedTypeclass {
|
|||
struct TypeclassExpression {
|
||||
std::vector<TypeSubExpression> namespaces;
|
||||
TypeclassIdentifier typeclass;
|
||||
|
||||
utils::IdType type_id_;
|
||||
};
|
||||
|
||||
// ----------------- Comments [IGNORE] -----------------
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue