mirror of
https://codeberg.org/ProgramSnail/lang_2023.git
synced 2026-01-25 13:07:13 +00:00
visitor base fixed
This commit is contained in:
parent
2ff2f3af12
commit
c6c2a00e04
3 changed files with 89 additions and 57 deletions
|
|
@ -369,7 +369,7 @@ struct TypeDefinition {
|
|||
|
||||
struct AnnotatedAbstractType {
|
||||
AbstractTypeIdentifier type;
|
||||
std::vector<TypeclassExpression> typeclasses;
|
||||
std::vector<std::unique_ptr<TypeclassExpression>> typeclasses;
|
||||
|
||||
utils::IdType type_graph_id_;
|
||||
};
|
||||
|
|
@ -459,7 +459,8 @@ struct AccessExpression {
|
|||
// Other Expressions -----------------
|
||||
|
||||
struct FunctionCallExpression {
|
||||
std::unique_ptr<std::variant<SubExpressionToken, TypeExpression>> prefix;
|
||||
std::variant<std::unique_ptr<SubExpressionToken>,
|
||||
std::unique_ptr<TypeExpression>> prefix;
|
||||
ExtendedName name;
|
||||
std::vector<FunctionArgument> arguments;
|
||||
};
|
||||
|
|
@ -547,22 +548,22 @@ struct ExtendedScopedAnyType {
|
|||
// Typeclass -----------------
|
||||
|
||||
struct TypeclassExpression {
|
||||
std::vector<TypeSubExpression> namespaces;
|
||||
std::vector<TypeSubExpression> types;
|
||||
TypeclassSubExpression typeclass;
|
||||
|
||||
utils::IdType type_id_;
|
||||
};
|
||||
|
||||
struct ParametrizedTypeclass {
|
||||
TypeclassIdentifier typeclass_expression;
|
||||
std::vector<TypeExpression> parameters;
|
||||
TypeclassIdentifier typeclass;
|
||||
std::vector<std::unique_ptr<TypeExpression>> parameters;
|
||||
};
|
||||
|
||||
// Typeclass & Type -----------------
|
||||
|
||||
struct ParametrizedType {
|
||||
AnyTypeIdentifier type_expression;
|
||||
std::vector<TypeExpression> parameters;
|
||||
AnyTypeIdentifier type;
|
||||
std::vector<std::unique_ptr<TypeExpression>> parameters;
|
||||
};
|
||||
|
||||
// ----------------- Comments [IGNORE] -----------------
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue