functions arguments and parameters are separated now

This commit is contained in:
ProgramSnail 2023-05-05 10:17:10 +03:00
parent f7e985a448
commit a11ddbd25f
8 changed files with 49 additions and 98 deletions

View file

@ -90,8 +90,6 @@ private:
void Visit(FunctionCallExpression* node) override;
void Visit(FunctionArgument& node) override; // variant
void Visit(TupleExpression* node) override;
void Visit(VariantExpression* node) override;
void Visit(ReturnExpression* node) override;

View file

@ -232,12 +232,6 @@ struct ParametrizedTypeclass;
struct ParametrizedType;
//
using FunctionArgument = std::variant<
SubExpressionToken,
std::unique_ptr<TypeExpression>>;
// Comments [IGNORE] -----------------
// Identifiers, constants, etc. -----------------
@ -468,7 +462,8 @@ struct FunctionCallExpression {
std::optional<std::variant<std::unique_ptr<SubExpressionToken>,
std::unique_ptr<TypeExpression>>> prefix;
ExtendedName name;
std::vector<FunctionArgument> arguments;
std::vector<std::unique_ptr<TypeExpression>> parameters;
std::vector<SubExpressionToken> arguments;
};
struct TupleExpression {

View file

@ -87,8 +87,6 @@ protected:
virtual void Visit(FunctionCallExpression* node);
virtual void Visit(FunctionArgument& node); // variant
virtual void Visit(TupleExpression* node);
virtual void Visit(VariantExpression* node);
virtual void Visit(ReturnExpression* node);