mirror of
https://codeberg.org/ProgramSnail/lang_2023.git
synced 2026-01-05 22:38:16 +00:00
part of type_check_visitor done
This commit is contained in:
parent
6fc91aafa0
commit
656f58bcde
14 changed files with 891 additions and 539 deletions
|
|
@ -85,17 +85,19 @@ struct FunctionDeclarationInfo {
|
|||
std::vector<ParameterInfo> parameters;
|
||||
std::vector<interpreter::tokens::AnyType*> argument_type_nodes;
|
||||
std::vector<AnyTypeInfo*> argument_types;
|
||||
interpreter::tokens::FunctionDeclaration* node = nullptr;
|
||||
};
|
||||
|
||||
struct FunctionDefinitionInfo {
|
||||
std::vector<ParameterInfo> parameters;
|
||||
std::vector<std::string> argument_names;
|
||||
interpreter::tokens::SuperExpression* expression = nullptr;
|
||||
interpreter::tokens::FunctionDefinitionStatement* node = nullptr;
|
||||
};
|
||||
|
||||
struct FunctionInfo {
|
||||
FunctionDeclarationInfo declaration;
|
||||
FunctionDefinitionInfo definition;
|
||||
size_t argument_count = 0;
|
||||
std::optional<FunctionDeclarationInfo> declaration;
|
||||
std::optional<FunctionDefinitionInfo> definition;
|
||||
};
|
||||
|
||||
struct TypeclassInfo {
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue