Value Class
(QmlJS::Value)The Value class is an abstract base class for the result of a JS expression. More...
Header: | #include <Value> |
Public Functions
Value() | |
virtual | ~Value() |
virtual void | accept(QmlJS::ValueVisitor *) const = 0 |
virtual const QmlJS::AnchorLineValue * | asAnchorLineValue() const |
virtual const QmlJS::ASTFunctionValue * | asAstFunctionValue() const |
virtual const QmlJS::ASTObjectValue * | asAstObjectValue() const |
virtual const QmlJS::ASTPropertyReference * | asAstPropertyReference() const |
virtual const QmlJS::ASTSignal * | asAstSignal() const |
virtual const QmlJS::ASTVariableReference * | asAstVariableReference() const |
virtual const QmlJS::BooleanValue * | asBooleanValue() const |
virtual const QmlJS::ColorValue * | asColorValue() const |
virtual const QmlJS::CppComponentValue * | asCppComponentValue() const |
virtual const QmlJS::Function * | asFunction() const |
virtual const QmlJS::FunctionValue * | asFunctionValue() const |
virtual const QmlJS::IntValue * | asIntValue() const |
virtual const QmlJS::JSImportScope * | asJSImportScope() const |
virtual const QmlJS::MetaFunction * | asMetaFunction() const |
virtual const QmlJS::NullValue * | asNullValue() const |
virtual const QmlJS::NumberValue * | asNumberValue() const |
virtual const QmlJS::ObjectValue * | asObjectValue() const |
virtual const QmlJS::QmlEnumValue * | asQmlEnumValue() const |
virtual const QmlJS::QmlPrototypeReference * | asQmlPrototypeReference() const |
virtual const Internal::QtObjectPrototypeReference * | asQtObjectPrototypeReference() const |
virtual const QmlJS::RealValue * | asRealValue() const |
virtual const QmlJS::Reference * | asReference() const |
virtual const QmlJS::StringValue * | asStringValue() const |
virtual const QmlJS::TypeScope * | asTypeScope() const |
virtual const QmlJS::UndefinedValue * | asUndefinedValue() const |
virtual const QmlJS::UnknownValue * | asUnknownValue() const |
virtual const QmlJS::UrlValue * | asUrlValue() const |
virtual bool | getSourceLocation(QString *fileName, int *line, int *column) const |
Detailed Description
The Value class is an abstract base class for the result of a JS expression.
A Value represents a category of JavaScript values, such as number (NumberValue), string (StringValue) or functions with a specific signature (FunctionValue). It can also represent internal categories such as "a QML component instantiation defined in a file" (ASTObjectValue), "a QML component defined in C++" (CppComponentValue) or "no specific information is available" (UnknownValue).
The Value class itself provides accept() for admitting ValueVisitors and a do-nothing getSourceLocation().
Value instances should be cast to a derived type either through the asXXX() helper functions such as asNumberValue() or via the value_cast() template function.
Values are the result of many operations in the QmlJS code model:
See also Evaluate, ValueOwner, and ValueVisitor.
Member Function Documentation
Value::Value()
Default constructs an instance of Value.
[virtual]
Value::~Value()
Destroys the instance of Value. The destructor is virtual.