forked from qt-creator/qt-creator
QmlJS: Add documentation for ScopeChain.
Clear up Context documentation a little. Change-Id: I2ede3dc0f15a972d2748cef1aa579a04f0786106 Reviewed-by: Leandro Melo <leandro.melo@nokia.com>
This commit is contained in:
@@ -42,13 +42,18 @@ using namespace QmlJS::AST;
|
|||||||
\brief Holds information about relationships between documents in a Snapshot.
|
\brief Holds information about relationships between documents in a Snapshot.
|
||||||
\sa Document Link Snapshot
|
\sa Document Link Snapshot
|
||||||
|
|
||||||
Contexts are usually created through Link.
|
Contexts are usually created through Link. Once created, a Context is immutable
|
||||||
|
and can be freely shared between threads.
|
||||||
Once created, a Context is immutable and can be freely shared between threads.
|
|
||||||
|
|
||||||
Their main purpose is to allow lookup of types with lookupType() and resolving
|
Their main purpose is to allow lookup of types with lookupType() and resolving
|
||||||
of references through lookupReference(). Information about the imports of
|
of references through lookupReference(). As such, they form the basis for creating
|
||||||
a QmlJS::Document can be accessed with imports().
|
a ScopeChain.
|
||||||
|
|
||||||
|
Information about the imports of a Document can be accessed with imports().
|
||||||
|
|
||||||
|
When dealing with a QmlJSEditor::QmlJSTextEditorWidget it is unnecessary to
|
||||||
|
construct a new Context manually. Instead use
|
||||||
|
QmlJSTextEditorWidget::semanticInfo()::context.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
ContextPtr Context::create(const QmlJS::Snapshot &snapshot, ValueOwner *valueOwner, const ImportsPerDocument &imports)
|
ContextPtr Context::create(const QmlJS::Snapshot &snapshot, ValueOwner *valueOwner, const ImportsPerDocument &imports)
|
||||||
|
|||||||
@@ -36,6 +36,26 @@
|
|||||||
|
|
||||||
using namespace QmlJS;
|
using namespace QmlJS;
|
||||||
|
|
||||||
|
/*!
|
||||||
|
\class QmlJS::ScopeChain
|
||||||
|
\brief Describes the scopes used for global lookup in a specific location.
|
||||||
|
\sa Document Context ScopeBuilder
|
||||||
|
|
||||||
|
A ScopeChain is used to perform global lookup with the lookup() method and
|
||||||
|
to access information about the enclosing scopes.
|
||||||
|
|
||||||
|
Once constructed for a Document in a Context it represents the root scope of
|
||||||
|
that Document. From there, a ScopeBuilder can be used to push and pop scopes
|
||||||
|
corresponding to functions, object definitions, etc.
|
||||||
|
|
||||||
|
It is an error to use the same ScopeChain from multiple threads; use a copy.
|
||||||
|
Copying is cheap. Initial construction is currently expensive.
|
||||||
|
|
||||||
|
When a QmlJSEditor::QmlJSTextEditorWidget is available, there's no need to
|
||||||
|
construct a new ScopeChain. Instead use
|
||||||
|
QmlJSTextEditorWidget::semanticInfo()::scopeChain().
|
||||||
|
*/
|
||||||
|
|
||||||
QmlComponentChain::QmlComponentChain(const Document::Ptr &document)
|
QmlComponentChain::QmlComponentChain(const Document::Ptr &document)
|
||||||
: m_document(document)
|
: m_document(document)
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user