part of expected type type check process modification: fixes, check function

This commit is contained in:
ProgramSnail 2024-01-04 00:13:19 +03:00
parent ffa9c47107
commit 3907da619e
2 changed files with 73 additions and 39 deletions

View file

@ -15,74 +15,74 @@ namespace type_check {
nodes::TypeCheckResult
type_check_expression(const nodes::Expression &expression,
SourcesManager &sources_manager, State &state,
const Arguments &arguments = {});
const Arguments &arguments);
// --- flow control
nodes::TypeCheckResult type_check_match(const nodes::Match &expression,
SourcesManager &sources_manager,
State &state,
const Arguments &arguments = {});
const Arguments &arguments);
nodes::TypeCheckResult type_check_condition(const nodes::Condition &expression,
SourcesManager &sources_manager,
State &state,
const Arguments &arguments = {});
const Arguments &arguments);
nodes::TypeCheckResult type_check_loop(const nodes::Loop &expression,
SourcesManager &sources_manager,
State &state,
const Arguments &arguments = {});
const Arguments &arguments);
// --- containers
nodes::TypeCheckResult type_check_container(const nodes::Container &expression,
SourcesManager &sources_manager,
State &state,
const Arguments &arguments = {});
const Arguments &arguments);
// --- modifiers
nodes::TypeCheckResult type_check_return(const nodes::Return &expression,
SourcesManager &sources_manager,
State &state,
const Arguments &arguments = {});
const Arguments &arguments);
nodes::TypeCheckResult
type_check_name_definition(const nodes::NameDefinition &expression,
SourcesManager &sources_manager, State &state,
const Arguments &arguments = {});
const Arguments &arguments);
nodes::TypeCheckResult type_check_access(const nodes::Access &expression,
SourcesManager &sources_manager,
State &state,
const Arguments &arguments = {});
const Arguments &arguments);
nodes::TypeCheckResult
type_check_loop_control(const nodes::LoopControl &expression,
SourcesManager &sources_manager, State &state,
const Arguments &arguments = {});
const Arguments &arguments);
nodes::TypeCheckResult
type_check_modifier_expression(const nodes::ModifierExpression &expression,
SourcesManager &sources_manager, State &state,
const Arguments &arguments = {});
const Arguments &arguments);
// --- other
nodes::TypeCheckResult
type_check_name_expression(const nodes::NameExpression &expression,
SourcesManager &sources_manager, State &state,
const Arguments &arguments = {});
const Arguments &arguments);
nodes::TypeCheckResult
type_check_constructor(const nodes::Constructor &expression,
SourcesManager &sources_manager, State &state,
const Arguments &arguments = {});
const Arguments &arguments);
nodes::TypeCheckResult type_check_lambda(const nodes::Lambda &expression,
SourcesManager &sources_manager,
State &state,
const Arguments &arguments = {});
const Arguments &arguments);
} // namespace type_check