|
WSF
|
Provides access to the results of parsing the WSF inputs. More...
#include <ParseResults.hpp>


Classes | |
| struct | FileNotification |
| struct | TypeInformation |
Public Types | |
| enum | FileNotificationType { cERROR_BIT = 1 << 29 , cWARNING_BIT = 1 << 28 , cINFORMATION_BIT = 1 << 27 , cKIND_MASK = 0xffff , cTYPE_KIND = 1 , cINCLUDE_KIND = 2 , cREFERENCE_KIND = 3 , cSYNTAX_ERROR_KIND = 4 } |
| using | FileNotificationList = std::vector<FileNotification> |
Public Member Functions | |
| ParseResults (Project *aProjectPtr) | |
| ~ParseResults () override | |
| void | Clear () |
| void | AssignResults (Project *aProjectPtr, WsfParser *aParserPtr, const WsfParseSourceInclude *aRootInclude, WsfParseNode *aParseTreePtr, WsfParseNode *aLastNodePtr, std::map< UtTextDocument *, WsfParseSourceInclude * > &aFirstIncludes) |
| WsfParseSourceInclude * | FindSourceData (UtTextDocument *aSourcePtr) |
| bool | GetRangeNodes (const UtTextDocumentRange &aRange, std::vector< WsfParseNode * > &aNodes) |
| bool | FindIncludeAtPoint (UtTextDocument *aSourcePtr, const UtTextRange &aLocation, WsfParseSourceInclude *&aSourceIncludePtr, int &aEntryIndex, TextSource *&aIncludeSourcePtr) |
| WsfParseNode * | FindLastParseNode (const UtTextDocumentRange &aPosition) |
| WsfParseNode * | FindBlock (WsfParseNode *aNodePtr) |
| void | FindSubcommands (WsfParseNode *aNodePtr, std::vector< std::string > &aCommands) |
| void | FindDefinitions (const std::string &aName, const std::string &aDefinitionKind, std::vector< WsfParseNode * > &aNodes) |
| void | FindReferences (const std::string &aName, const std::string &aDefinitionKind, std::vector< WsfParseNode * > &aNodes) |
| void | FindDefinitionsOfType (const WsfParseTypePath &aPath, std::vector< WsfParseNode * > &aNodes, bool aAllowNested=false) |
| void | FindDefinitionsOfType (const std::string &aDefinitionType, std::vector< WsfParseNode * > &aNodes, bool aAllowNested=false) |
| void | FindNamedNodes (const std::string &aCategory, const std::string &aName, std::vector< WsfParseNode * > &aNodes) |
| void | GetBaseTypes (const WsfParseTypePath &aKind, std::vector< std::string > &aBaseTypeNames, bool aIncludeUserTypes=true) |
| void | FindNames (const std::string &aNameType, std::vector< std::string > &aNameList) |
| void | FindIncludes (TextSource *aSourcePtr, std::vector< UtTextDocumentRange > &aIncludes) |
| void | FindReferencedFiles (std::vector< WsfParseNode * > &aFileReferenceNodes) |
| WsfPProxyPath | FindProxyPathFromLocation (const UtTextDocumentRange &aLocation, int &aEntryTypeRef) |
| WsfParseType * | FindCurrentType (WsfParseNode *aNodePtr) |
| Return the type lookup for the type located at aNodePtr. | |
| WsfParseIndex * | GetParseIndex () |
| FileNotificationList * | GetFileNotifications (TextSource *aSourcePtr) |
| FileNotification | GetNotification (const UtTextDocumentLocation &aLocation) |
| bool | FindTypeInfo (TypeInformation &aInformation) |
| Fills aInformation given the type key. Returns 'true' if the type information was found successfully. | |
| bool | FindUserTypeDocumentation (TypeInformation &aType, std::string &aDocumentation) |
| bool | TypeInformationFromPosition (const UtTextDocumentLocation &aLocation, TypeInformation &aInformation) |
| bool | TypeInformationFromNode (WsfParseNode *aNodePtr, TypeInformation &aInformation) |
| bool | FindBaseType (const TypeInformation &aType, TypeInformation &aBaseType) |
| Searches for the type information of aType's base type. | |
| WsfParseNode * | FindCreateTypeNode (const TypeInformation &aType) |
| Searches for the parse node that created the specified type. | |
| WsfParseNode * | FindTypeDefinitionNode (const TypeInformation &aType) |
| Searches for the parse node which defined aType. | |
| std::vector< WsfParseNode * > | FindTypeReferenceNodes (const TypeInformation &aType) |
| bool | TypeKeyMatches (const WsfParseTypePath &aQuery, const WsfParseTypePath &aTest) |
| WsfParser * | parser () const |
| const std::vector< WsfParseError * > & | errors () const |
| WsfParseNode * | parseTree () const |
| WsfParseNode * | lastNode () const |
| const WsfParseSourceInclude * | rootInclude () const |
| Public Member Functions inherited from wizard::ParseResultsTiny | |
| ParseResultsTiny (Project *aProjectPtr) | |
| ~ParseResultsTiny () override | |
| void | FreeScriptTypes () |
| void | TakeResults (ParseResults &aResults) |
| Copies a minimal subset of results from aResults. | |
| bool | IncludesFile (TextSource *aSourcePtr) const |
| bool | FindBestRelativePath (UtPath aFullPath, std::string &aRelativeIncludePath) |
| Public Member Functions inherited from wizard::ParseResultsProxyData | |
| ParseResultsProxyData () | |
| ParseResultsProxyData (const ParseResultsProxyData &)=delete | |
| ParseResultsProxyData (ParseResultsProxyData &&)=default | |
| ParseResultsProxyData & | operator= (const ParseResultsProxyData &)=delete |
| ParseResultsProxyData & | operator= (ParseResultsProxyData &&)=default |
| virtual | ~ParseResultsProxyData ()=default |
| void | SwapProxy (ParseResultsProxyData &aOtherParseResults, bool aSwapProxyPointer) |
| void | GiveProxy (std::unique_ptr< WsfPProxy > aProxy, std::unique_ptr< ProxyHash > aProxyHashPtr) |
| void | FindProxySourcePaths (const WsfPProxyPath &aPath, std::vector< WsfPProxyPath > &aSources) |
| UtTextDocumentRange | FindDefinitionLocation (const WsfPProxyPath &aPath) |
| void | FindModificationLocations (const WsfPProxyPath &aPath, std::vector< UtTextDocumentRange > &aLocations) |
| void | FindDefinitionStartLocations (const WsfPProxyPath &aPath, std::vector< UtTextDocumentRange > &aLocations) |
| void | FindModificationLocationsExtended (const WsfPProxyPath &aPath, std::vector< UtTextDocumentRange > &aLocations) |
| void | FindDefinitionStartLocationsExtended (const WsfPProxyPath &aPath, std::vector< UtTextDocumentRange > &aLocations) |
| void | FindDerivedTypes (const WsfPProxyPath &aTypePath, std::vector< WsfPProxyPath > &aDerivedTypePaths) |
| WsfPProxy * | Proxy () const |
| WsfPProxyNode | ProxyRootNode () const |
| WsfPProxyStructValue | ProxyRoot () const |
| const std::shared_ptr< WsfPProxyRegistry > & | ProxyRegistry () |
| ProxyHash * | GetProxyHash () |
| WsfPProxyIndex * | ProxyIndex () |
| WsfPProxyPathMap * | ProxyPathMap () |
| bool | isProxyDataOld () const |
Static Public Member Functions | |
| static WsfPProxyNode | FindProxyReference (WsfPProxyNode aContext, WsfParseTypePath aPath) |
Public Attributes | |
| std::vector< WsfParseNode * > | mFileTransitionNodes |
| Public Attributes inherited from wizard::ParseResultsTiny | |
| long long | mSequenceNumber |
| Project * | mProjectPtr |
| ParseIncludes | mFirstIncludes |
| ParseIncludePaths | mIncludePaths |
| WsfScriptData * | mScriptDataPtr |
| WsfScriptTypes * | mScriptTypesPtr |
Protected Types | |
| typedef std::map< UtTextDocument *, FileNotificationList > | FileNotificationMap |
Protected Member Functions | |
| void | IndexNames () |
| void | FindSubcommandsP (WsfParseRule *aReaderPtr, std::vector< std::string > &aCommands) |
Protected Attributes | |
| WsfParser * | mParserPtr |
| std::vector< WsfParseError * > | mErrors |
| WsfParseNode * | mParseTreePtr |
| WsfParseNode * | mLastNodePtr |
| const WsfParseSourceInclude * | mRootInclude |
| std::vector< UtStringRef > | mPlatformPartKinds |
| FileNotificationMap | mFileNotifications |
| std::set< WsfParseTypePath > | mTypeNames |
| bool | mTypeNamesIndexed |
| Protected Attributes inherited from wizard::ParseResultsProxyData | |
| std::unique_ptr< ProxyHash > | mProxyHashPtr |
| std::unique_ptr< WsfPProxy > | mProxy |
Friends | |
| class | ParseWorker |
Provides access to the results of parsing the WSF inputs.
| using wizard::ParseResults::FileNotificationList = std::vector<FileNotification> |
|
protected |
|
explicit |
References mLastNodePtr, mParserPtr, mParseTreePtr, mPlatformPartKinds, mRootInclude, mTypeNamesIndexed, and wizard::ParseResultsTiny::ParseResultsTiny().
Referenced by ParseWorker.
|
override |
References Clear().
| void wizard::ParseResults::AssignResults | ( | Project * | aProjectPtr, |
| WsfParser * | aParserPtr, | ||
| const WsfParseSourceInclude * | aRootInclude, | ||
| WsfParseNode * | aParseTreePtr, | ||
| WsfParseNode * | aLastNodePtr, | ||
| std::map< UtTextDocument *, WsfParseSourceInclude * > & | aFirstIncludes ) |
References Clear(), errors(), mErrors, wizard::ParseResultsTiny::mFirstIncludes, wizard::ParseResultsTiny::mIncludePaths, mLastNodePtr, mParserPtr, mParseTreePtr, wizard::ParseResultsTiny::mProjectPtr, mRootInclude, and std::swap().
Referenced by ParseWorker.
| void wizard::ParseResults::Clear | ( | ) |
References wizard::ParseResultsTiny::FreeScriptTypes(), mErrors, mFileNotifications, mFileTransitionNodes, mParseTreePtr, mRootInclude, wizard::ParseResultsTiny::mScriptDataPtr, and mTypeNamesIndexed.
Referenced by AssignResults(), ParseWorker, and ~ParseResults().
|
inline |
References mErrors.
Referenced by AssignResults().
| bool wizard::ParseResults::FindBaseType | ( | const TypeInformation & | aType, |
| TypeInformation & | aBaseType ) |
Searches for the type information of aType's base type.
References wizard::ParseResults::TypeInformation::cBASIC_TYPE, wizard::ParseResults::TypeInformation::cLAZY_TYPE, WsfParseNode::cTYPE_REFERENCE_NODE, FindCreateTypeNode(), WsfParseNode::Left(), wizard::ParseResults::TypeInformation::mFlags, WsfParseNode::mFlags, and TypeInformationFromNode().
Referenced by wizard::EditAssist_Type::SetTypeData().
| WsfParseNode * wizard::ParseResults::FindBlock | ( | WsfParseNode * | aNodePtr | ) |
References WsfParseNode::FindChildByType(), WsfParseNode::GetParent(), and WsfParseNode::mType.
Referenced by ParseWorker.
| WsfParseNode * wizard::ParseResults::FindCreateTypeNode | ( | const TypeInformation & | aType | ) |
Searches for the parse node that created the specified type.
References wizard::ParseResults::TypeInformation::cBASIC_TYPE, WsfParseTypeInfoData::cCREATE_TYPE, wizard::ParseResults::TypeInformation::cLAZY_TYPE, WsfParseNode::cLOAD_TYPE_NODE, WsfParseNode::cTYPE_NAME_NODE, FindCurrentType(), WsfParseType::GetAncestry(), WsfParseNode::GetAuxiliaryValue(), WsfParseType::GetContainer(), WsfParseType::GetDepth(), WsfParseNode::GetFlags(), WsfParseNode::Left(), wizard::ParseResults::TypeInformation::mFlags, WsfParseTypeInfoData::mOperation, mParseTreePtr, WsfParseTypeInfoData::mSaveKey, wizard::ParseResults::TypeInformation::mType, wizard::ParseResults::TypeInformation::mTypeKey, and WsfParseNode::Next().
Referenced by FindBaseType(), FindTypeDefinitionNode(), and wizard::EditAssist_Type::SetTypeData().
| WsfParseType * wizard::ParseResults::FindCurrentType | ( | WsfParseNode * | aNodePtr | ) |
Return the type lookup for the type located at aNodePtr.
References WsfParseNode::cLOAD_TYPE_NODE, WsfParseTypeInfoData::cNESTED_LOAD, WsfParseTypeInfoData::cNESTED_SAVE, WsfParseType::FindType(), WsfParseNode::GetAuxiliaryValue(), WsfParseNode::GetParent(), GetParseIndex(), WsfParseNode::Left(), WsfParseNode::mFlags, WsfParseTypeInfoData::mFlags, WsfParseTypeInfoData::mLoadKey, and WsfParseTypeInfoData::mSaveKey.
Referenced by FindCreateTypeNode(), FindSubcommands(), and TypeInformationFromNode().
| void wizard::ParseResults::FindDefinitions | ( | const std::string & | aName, |
| const std::string & | aDefinitionKind, | ||
| std::vector< WsfParseNode * > & | aNodes ) |
| void wizard::ParseResults::FindDefinitionsOfType | ( | const std::string & | aDefinitionType, |
| std::vector< WsfParseNode * > & | aNodes, | ||
| bool | aAllowNested = false ) |
| void wizard::ParseResults::FindDefinitionsOfType | ( | const WsfParseTypePath & | aPath, |
| std::vector< WsfParseNode * > & | aNodes, | ||
| bool | aAllowNested = false ) |
| bool wizard::ParseResults::FindIncludeAtPoint | ( | UtTextDocument * | aSourcePtr, |
| const UtTextRange & | aLocation, | ||
| WsfParseSourceInclude *& | aSourceIncludePtr, | ||
| int & | aEntryIndex, | ||
| TextSource *& | aIncludeSourcePtr ) |
| void wizard::ParseResults::FindIncludes | ( | TextSource * | aSourcePtr, |
| std::vector< UtTextDocumentRange > & | aIncludes ) |
References WsfParseSourceInclude::cINCLUDE_COMMAND, wizard::TextSource::GetSource(), WsfParseSourceInclude::mEntries, WsfParseSourceInclude::Entry::mIsVirtualInclude, WsfParseSourceInclude::Entry::mLocation, mRootInclude, WsfParseSourceInclude::mSourcePtr, and WsfParseSourceInclude::Entry::mTargetSource.
Referenced by wizard::Project::FindIncludes(), FindSubcommands(), wizard::RenameFileDialog::OkClick(), and wizard::RenameFileDialog::UpdateList().
| WsfParseNode * wizard::ParseResults::FindLastParseNode | ( | const UtTextDocumentRange & | aPosition | ) |
Finds the last WsfParseNode intersecting the specified range. WIZARD_TODO: Need way to efficiently find nodes. Includes allow nodes to be segmented preventing an efficient approach. Possible solution is to store ranges of nodes valid for a given source file in the UtTextDocumentData class – allowing binary search.
References GetRangeNodes().
Referenced by wizard::DocumentationInterpretter::FindDocumentation(), FindProxyPathFromLocation(), wizard::InputContext::GetContext(), wizard::EditAssist::MakeAssistant(), ParseWorker, and TypeInformationFromPosition().
| void wizard::ParseResults::FindNamedNodes | ( | const std::string & | aCategory, |
| const std::string & | aName, | ||
| std::vector< WsfParseNode * > & | aNodes ) |
References WsfParseNode::cNAMED_NODE, WsfParseNode::GetFlags(), mParseTreePtr, WsfParseNode::mType, WsfParseNode::mValue, and WsfParseNode::Next().
Referenced by FindSubcommands().
| void wizard::ParseResults::FindNames | ( | const std::string & | aNameType, |
| std::vector< std::string > & | aNameList ) |
Finds the names of all definitions of a given type.
| aNameType | The definition type to find the names of. |
| aNameList | An out-parameter containing the names of the discovered names. Found names are added to this parameter. |
References WsfParseNode::cNAMED_NODE, WsfParseNode::mFlags, mParseTreePtr, WsfParseNode::mType, WsfParseNode::mValue, and WsfParseNode::Next().
Referenced by FindSubcommands().
| WsfPProxyPath wizard::ParseResults::FindProxyPathFromLocation | ( | const UtTextDocumentRange & | aLocation, |
| int & | aEntryTypeRef ) |
|
static |
| void wizard::ParseResults::FindReferencedFiles | ( | std::vector< WsfParseNode * > & | aFileReferenceNodes | ) |
References WsfParseAuxData::cFILE_REFERENCE, WsfParseNode::GetAuxiliaryValue(), WsfParseAuxData::mDataType, mParseTreePtr, and WsfParseNode::Next().
Referenced by FindSubcommands().
| void wizard::ParseResults::FindReferences | ( | const std::string & | aName, |
| const std::string & | aDefinitionKind, | ||
| std::vector< WsfParseNode * > & | aNodes ) |
| WsfParseSourceInclude * wizard::ParseResults::FindSourceData | ( | UtTextDocument * | aSourcePtr | ) |
References wizard::ParseResultsTiny::mFirstIncludes.
Referenced by FindIncludeAtPoint(), ParseWorker, and wizard::WsfStyler::UpdateStyle().
| void wizard::ParseResults::FindSubcommands | ( | WsfParseNode * | aNodePtr, |
| std::vector< std::string > & | aCommands ) |
|
protected |
| WsfParseNode * wizard::ParseResults::FindTypeDefinitionNode | ( | const TypeInformation & | aType | ) |
Searches for the parse node which defined aType.
References WsfParseNode::cLAZY_TYPENAME_NODE, WsfParseNode::cTYPE_NAME_NODE, FindCreateTypeNode(), WsfParseNode::Left(), WsfParseNode::mFlags, mParseTreePtr, WsfParseNode::mType, wizard::ParseResults::TypeInformation::mTypeKey, WsfParseNode::mValue, and WsfParseNode::NextLeaf().
Referenced by FindUserTypeDocumentation(), and wizard::EditAssist_Type::SetTypeData().
| bool wizard::ParseResults::FindTypeInfo | ( | TypeInformation & | aInformation | ) |
Fills aInformation given the type key. Returns 'true' if the type information was found successfully.
References wizard::ParseResults::TypeInformation::cBASIC_TYPE, wizard::ParseResults::TypeInformation::cLAZY_TYPE, wizard::ParseResults::TypeInformation::cTYPE_LOOKUP_FAIL, WsfParseType::FindNestedSymbol(), WsfParseType::FindType(), GetParseIndex(), wizard::ParseResults::TypeInformation::mFlags, wizard::ParseResults::TypeInformation::mParent, mParserPtr, mPlatformPartKinds, wizard::ParseResults::TypeInformation::mType, wizard::ParseResults::TypeInformation::mTypeKey, and mTypeNames.
Referenced by TypeInformationFromNode().
| std::vector< WsfParseNode * > wizard::ParseResults::FindTypeReferenceNodes | ( | const TypeInformation & | aType | ) |
References WsfParseNode::cLAZY_TYPE_REFERENCE_NODE, WsfParseNode::cLAZY_TYPENAME_NODE, WsfParseNode::cLOAD_TYPE_NODE, WsfParseNode::cNAMED_NODE, WsfParseType::GetDepth(), WsfParseNode::GetFlags(), mParseTreePtr, wizard::ParseResults::TypeInformation::mType, wizard::ParseResults::TypeInformation::mTypeKey, WsfParseNode::mValue, WsfParseNode::NextLeaf(), TypeInformationFromNode(), and TypeKeyMatches().
| bool wizard::ParseResults::FindUserTypeDocumentation | ( | TypeInformation & | aType, |
| std::string & | aDocumentation ) |
Fills aDocumentation with the string containing the user's documentation in comments above the given type. Returns 'true' if the documentation is found.
References FindTypeDefinitionNode(), and WsfParseNode::mValue.
Referenced by wizard::EditAssist_Type::SetTypeData().
| void wizard::ParseResults::GetBaseTypes | ( | const WsfParseTypePath & | aKind, |
| std::vector< std::string > & | aBaseTypeNames, | ||
| bool | aIncludeUserTypes = true ) |
| wizard::ParseResults::FileNotificationList * wizard::ParseResults::GetFileNotifications | ( | TextSource * | aSourcePtr | ) |
References WsfParseTypeInfoData::cDUPLICATE_NAME, cERROR_BIT, WsfParseSourceInclude::cINCLUDE_COMMAND, cINCLUDE_KIND, cINFORMATION_BIT, WsfParseTypeInfoData::cINVALID_TYPE, WsfParseNode::cLAZY_TYPE_REFERENCE_NODE, WsfParseNode::cLAZY_TYPENAME_NODE, WsfParseNode::cLOAD_TYPE_NODE, cREFERENCE_KIND, cSYNTAX_ERROR_KIND, cTYPE_KIND, WsfParseNode::cTYPE_NAME_NODE, WsfParseNode::cTYPE_REFERENCE_NODE, cWARNING_BIT, WsfPProxyPath::Empty(), WsfPProxyObjectMap::GetAt(), WsfParseNode::GetAuxiliaryValue(), WsfPProxyValue::GetObjectMap(), GetRangeNodes(), WsfPProxyValue::GetType(), IndexNames(), wizard::ParseResultsProxyData::isProxyDataOld(), WsfPProxyValue::IsStruct(), WsfPProxyValue::IsValid(), WsfParseNode::Left(), WsfParseSourceInclude::mEntries, mErrors, mFileNotifications, wizard::ParseResultsTiny::mFirstIncludes, WsfParseNode::mFlags, WsfParseTypeInfoData::mFlags, WsfParseSourceInclude::Entry::mLocation, wizard::ParseResults::FileNotification::mNotificationType, wizard::ParseResultsProxyData::mProxy, WsfParseSourceInclude::mSourcePtr, WsfParseNode::mType, WsfParseSourceInclude::Entry::mType, WsfPProxyType::mTypeName, mTypeNames, mTypeNamesIndexed, WsfParseNode::mValue, WsfParseNode::Next(), and WsfPProxyPath::Pop().
Referenced by GetNotification(), and wizard::WsfStyler::UpdateStyle().
| wizard::ParseResults::FileNotification wizard::ParseResults::GetNotification | ( | const UtTextDocumentLocation & | aLocation | ) |
References GetFileNotifications(), and wizard::ParseResults::FileNotification::mRange.
| WsfParseIndex * wizard::ParseResults::GetParseIndex | ( | ) |
References mParserPtr.
Referenced by FindCurrentType(), FindSubcommands(), FindTypeInfo(), and TypeInformationFromNode().
| bool wizard::ParseResults::GetRangeNodes | ( | const UtTextDocumentRange & | aRange, |
| std::vector< WsfParseNode * > & | aNodes ) |
Returns the ranges of nodes containing the values in the given range.
| aRange | The range of text to find nodes in. |
| aNodes | A vector containing a pair of nodes for each range marking the begin and end. |
References WsfParseNode::Down(), WsfParseNode::GetParent(), WsfParseNode::Left(), mFileTransitionNodes, mLastNodePtr, WsfParseNode::mValue, WsfParseNode::NextLeaf(), and WsfParseNode::PreviousLeaf().
Referenced by FindLastParseNode(), wizard::WsfEditor::FormatSelection(), GetFileNotifications(), and ParseWorker.
|
protected |
Build an index of 'names' defined in the input file. These are types that do not produce an entry in the parser's type dictionary
References WsfParseNode::cLAZY_TYPENAME_NODE, WsfParseNode::mFlags, mParseTreePtr, WsfParseNode::mType, mTypeNames, mTypeNamesIndexed, WsfParseNode::mValue, and WsfParseNode::Next().
Referenced by GetFileNotifications().
|
inline |
References mLastNodePtr.
|
inline |
References mParserPtr.
Referenced by wizard::AutoComplete::GetSuggestions(), and wizard::AutoComplete::GetSyntax().
|
inline |
References mParseTreePtr.
|
inline |
References mRootInclude.
| bool wizard::ParseResults::TypeInformationFromNode | ( | WsfParseNode * | aNodePtr, |
| TypeInformation & | aInformation ) |
References wizard::ParseResults::TypeInformation::cDUPLICATE_NAME, WsfParseTypeInfoData::cDUPLICATE_NAME, WsfParseTypeInfoData::cINVALID_TYPE, WsfParseNode::cLAZY_TYPE_REFERENCE_NODE, WsfParseNode::cLAZY_TYPENAME_NODE, WsfParseNode::cLOAD_TYPE_NODE, WsfParseTypeInfoData::cNESTED_LOAD, WsfParseTypeInfoData::cNESTED_SAVE, wizard::ParseResults::TypeInformation::cTYPE_LOOKUP_FAIL, WsfParseNode::cTYPE_NAME_NODE, WsfParseNode::cTYPE_REFERENCE_NODE, FindCurrentType(), FindTypeInfo(), WsfParseNode::GetAuxiliaryValue(), GetParseIndex(), wizard::ParseResults::TypeInformation::mFlags, WsfParseNode::mFlags, WsfParseTypeInfoData::mFlags, WsfParseTypeInfoData::mLoadKey, wizard::ParseResults::TypeInformation::mParent, WsfParseTypeInfoData::mSaveKey, wizard::ParseResults::TypeInformation::mType, WsfParseNode::mType, wizard::ParseResults::TypeInformation::mTypeKey, WsfParseNode::mValue, and WsfParseNode::Right().
Referenced by FindBaseType(), FindTypeReferenceNodes(), and TypeInformationFromPosition().
| bool wizard::ParseResults::TypeInformationFromPosition | ( | const UtTextDocumentLocation & | aLocation, |
| TypeInformation & | aInformation ) |
Attempts to find type information given a location. The location should point to the text referring to the type.
References FindLastParseNode(), and TypeInformationFromNode().
Referenced by wizard::EditAssist::MakeAssistant().
|
inline |
References mPlatformPartKinds.
Referenced by FindTypeReferenceNodes().
|
friend |
References AssignResults(), Clear(), FindBlock(), FindIncludeAtPoint(), FindLastParseNode(), FindSourceData(), GetRangeNodes(), ParseResults(), and ParseWorker.
Referenced by ParseWorker.
|
protected |
Referenced by AssignResults(), Clear(), errors(), and GetFileNotifications().
|
protected |
Referenced by Clear(), and GetFileNotifications().
| std::vector<WsfParseNode*> wizard::ParseResults::mFileTransitionNodes |
List of leaf nodes which mark the switching of files, in the order of parse tree traversal. Used to quickly search the nodes in a file.
Referenced by Clear(), wizard::WsfStyler::FoldDocument(), GetRangeNodes(), and wizard::WsfStyler::UpdateStyle().
|
protected |
Due to the linked-list nature of the tree, finding the last node is O(Root Commands in all files) Store the last node for quick access.
Referenced by AssignResults(), GetRangeNodes(), lastNode(), and ParseResults().
|
protected |
Referenced by AssignResults(), FindTypeInfo(), GetParseIndex(), parser(), and ParseResults().
|
protected |
Referenced by AssignResults(), Clear(), FindCreateTypeNode(), FindDefinitions(), FindDefinitionsOfType(), FindDefinitionsOfType(), FindNamedNodes(), FindNames(), FindReferencedFiles(), FindReferences(), FindTypeDefinitionNode(), FindTypeReferenceNodes(), IndexNames(), ParseResults(), and parseTree().
|
protected |
Referenced by FindTypeInfo(), ParseResults(), and TypeKeyMatches().
|
protected |
Referenced by AssignResults(), Clear(), FindIncludes(), ParseResults(), and rootInclude().
|
protected |
Referenced by FindTypeInfo(), GetFileNotifications(), and IndexNames().
|
protected |
Referenced by Clear(), GetFileNotifications(), IndexNames(), and ParseResults().