diff options
author | Lars Knoll <lars.knoll@qt.io> | 2018-03-26 21:32:05 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2018-05-02 14:17:13 +0000 |
commit | e9492e7b7b44c1f8cd5489d93463fc2b1f8b6d72 (patch) | |
tree | 01d8e52fe7841c91fd019219055796fcc8db22aa /src/qml/compiler/qv4compilercontext_p.h | |
parent | 17f72f2d07352940b67a60c2ff6f7ef848793488 (diff) |
Rename the CompilationMode enum to ContextType
And make it an enum class. The new name fits better, as it's mainly
used to determine the type of the context when parsing. Also already
added the 'Block' value that will be needed.
Change-Id: I70d963b6a0b22db1a3c607cce6bdd2054b29e000
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/qml/compiler/qv4compilercontext_p.h')
-rw-r--r-- | src/qml/compiler/qv4compilercontext_p.h | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/src/qml/compiler/qv4compilercontext_p.h b/src/qml/compiler/qv4compilercontext_p.h index 2479465587..2864d759f9 100644 --- a/src/qml/compiler/qv4compilercontext_p.h +++ b/src/qml/compiler/qv4compilercontext_p.h @@ -66,14 +66,15 @@ namespace Compiler { struct ControlFlow; -enum CompilationMode { - GlobalCode, - EvalCode, - FunctionCode, - QmlBinding // This is almost the same as EvalCode, except: +enum class ContextType { + Global, + Function, + Eval, + Binding, // This is almost the same as Eval, except: // * function declarations are moved to the return address when encountered // * return statements are allowed everywhere (like in FunctionCode) // * variable declarations are treated as true locals (like in FunctionCode) + Block }; struct Context; @@ -86,7 +87,7 @@ struct Module { qDeleteAll(contextMap); } - Context *newContext(QQmlJS::AST::Node *node, Context *parent, CompilationMode compilationMode); + Context *newContext(QQmlJS::AST::Node *node, Context *parent, ContextType compilationMode); QHash<QQmlJS::AST::Node *, Context *> contextMap; QList<Context *> functions; @@ -157,7 +158,7 @@ struct Context { UsesArgumentsObject usesArgumentsObject = ArgumentsObjectUnknown; - CompilationMode compilationMode; + ContextType type; template <typename T> class SmallSet: public QVarLengthArray<T, 8> @@ -206,9 +207,9 @@ struct Context { PropertyDependencyMap contextObjectPropertyDependencies; PropertyDependencyMap scopeObjectPropertyDependencies; - Context(Context *parent, CompilationMode mode) + Context(Context *parent, ContextType type) : parent(parent) - , compilationMode(mode) + , type(type) { if (parent && parent->isStrict) isStrict = true; |