bug fixes, tests passed, result modifier (!) added to function arguments and to types

This commit is contained in:
ProgramSnail 2023-07-24 13:01:34 +03:00
parent 4470454838
commit 3914ff7d8b
16 changed files with 418 additions and 62 deletions

View file

@ -61,12 +61,15 @@ public:
std::vector<Identifier> &&arguments,
std::vector<Modifier> &&reference_types,
std::vector<std::optional<TypeProxy>> &&types,
std::vector<bool> &&optional_arguments,
std::vector<bool> &&result_arguments,
std::optional<ExpressionProxy> expression)
: Node(node), docs_(std::move(docs)),
constraints_(std::move(constraints)), modifier_(modifier), name_(name),
annotations_(std::move(annotations)), arguments_(std::move(arguments)),
reference_types_(std::move(reference_types)), types_(std::move(types)),
expression_(expression) {}
optional_arguments_(optional_arguments),
result_arguments_(result_arguments), expression_(expression) {}
private:
SymbolDocs docs_;
@ -77,8 +80,9 @@ private:
std::vector<Identifier> arguments_;
std::vector<Modifier> reference_types_;
std::vector<std::optional<TypeProxy>> types_;
std::vector<bool> optional_arguments_;
std::vector<bool> result_arguments_;
std::optional<ExpressionProxy> expression_;
// std::vector<bool> optional_arguments_; // ??
}; // IN PROGRESS
class TypeDefinition : public Node {