mirror of
https://github.com/godotengine/godot.git
synced 2025-10-26 03:04:31 +00:00
Initialize class/struct variables with default values in modules/
This commit is contained in:
parent
57e2822a05
commit
f7209b459b
100 changed files with 533 additions and 772 deletions
|
|
@ -39,20 +39,18 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
friend class VisualScriptNodeInstanceExpression;
|
||||
|
||||
struct Input {
|
||||
Variant::Type type;
|
||||
Variant::Type type = Variant::NIL;
|
||||
String name;
|
||||
|
||||
Input() { type = Variant::NIL; }
|
||||
};
|
||||
|
||||
Vector<Input> inputs;
|
||||
Variant::Type output_type;
|
||||
Variant::Type output_type = Variant::NIL;
|
||||
|
||||
String expression;
|
||||
|
||||
bool sequenced;
|
||||
int str_ofs;
|
||||
bool expression_dirty;
|
||||
bool sequenced = false;
|
||||
int str_ofs = 0;
|
||||
bool expression_dirty = true;
|
||||
|
||||
bool _compile_expression();
|
||||
|
||||
|
|
@ -114,7 +112,7 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
Error _get_token(Token &r_token);
|
||||
|
||||
String error_str;
|
||||
bool error_set;
|
||||
bool error_set = true;
|
||||
|
||||
struct ENode {
|
||||
enum Type {
|
||||
|
|
@ -131,11 +129,10 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
TYPE_CALL
|
||||
};
|
||||
|
||||
ENode *next;
|
||||
ENode *next = nullptr;
|
||||
|
||||
Type type;
|
||||
Type type = Type::TYPE_SELF;
|
||||
|
||||
ENode() { next = nullptr; }
|
||||
virtual ~ENode() {
|
||||
if (next) {
|
||||
memdelete(next);
|
||||
|
|
@ -144,17 +141,17 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
};
|
||||
|
||||
struct Expression {
|
||||
bool is_op;
|
||||
bool is_op = false;
|
||||
union {
|
||||
Variant::Operator op;
|
||||
ENode *node;
|
||||
ENode *node = nullptr;
|
||||
};
|
||||
};
|
||||
|
||||
ENode *_parse_expression();
|
||||
|
||||
struct InputNode : public ENode {
|
||||
int index;
|
||||
int index = 0;
|
||||
InputNode() {
|
||||
type = TYPE_INPUT;
|
||||
}
|
||||
|
|
@ -168,9 +165,9 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
};
|
||||
|
||||
struct OperatorNode : public ENode {
|
||||
Variant::Operator op;
|
||||
Variant::Operator op = Variant::Operator::OP_ADD;
|
||||
|
||||
ENode *nodes[2];
|
||||
ENode *nodes[2] = { nullptr, nullptr };
|
||||
|
||||
OperatorNode() {
|
||||
type = TYPE_OPERATOR;
|
||||
|
|
@ -184,8 +181,8 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
};
|
||||
|
||||
struct IndexNode : public ENode {
|
||||
ENode *base;
|
||||
ENode *index;
|
||||
ENode *base = nullptr;
|
||||
ENode *index = nullptr;
|
||||
|
||||
IndexNode() {
|
||||
type = TYPE_INDEX;
|
||||
|
|
@ -193,7 +190,7 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
};
|
||||
|
||||
struct NamedIndexNode : public ENode {
|
||||
ENode *base;
|
||||
ENode *base = nullptr;
|
||||
StringName name;
|
||||
|
||||
NamedIndexNode() {
|
||||
|
|
@ -202,7 +199,7 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
};
|
||||
|
||||
struct ConstructorNode : public ENode {
|
||||
Variant::Type data_type;
|
||||
Variant::Type data_type = Variant::Type::NIL;
|
||||
Vector<ENode *> arguments;
|
||||
|
||||
ConstructorNode() {
|
||||
|
|
@ -211,7 +208,7 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
};
|
||||
|
||||
struct CallNode : public ENode {
|
||||
ENode *base;
|
||||
ENode *base = nullptr;
|
||||
StringName method;
|
||||
Vector<ENode *> arguments;
|
||||
|
||||
|
|
@ -235,7 +232,7 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
};
|
||||
|
||||
struct BuiltinFuncNode : public ENode {
|
||||
VisualScriptBuiltinFunc::BuiltinFunc func;
|
||||
VisualScriptBuiltinFunc::BuiltinFunc func = VisualScriptBuiltinFunc::BuiltinFunc::BYTES_TO_VAR;
|
||||
Vector<ENode *> arguments;
|
||||
BuiltinFuncNode() {
|
||||
type = TYPE_BUILTIN_FUNC;
|
||||
|
|
@ -250,8 +247,8 @@ class VisualScriptExpression : public VisualScriptNode {
|
|||
return node;
|
||||
}
|
||||
|
||||
ENode *root;
|
||||
ENode *nodes;
|
||||
ENode *root = nullptr;
|
||||
ENode *nodes = nullptr;
|
||||
|
||||
protected:
|
||||
bool _set(const StringName &p_name, const Variant &p_value);
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue