MCPcopy Create free account
hub / github.com/anjo76/angelscript / AddVisibleNamespaces

Method AddVisibleNamespaces

sdk/angelscript/source/as_builder.cpp:912–930  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

910#endif
911
912void asCBuilder::AddVisibleNamespaces(asSNameSpace *ns, const asCArray<asSNameSpace*>& visited, asCArray<asSNameSpace*>& pending)
913{
914 asSMapNode<asSNameSpace*, asCArray<asSNameSpace*>>* cursor = 0;
915
916 if (namespaceVisibility.MoveTo(&cursor, ns))
917 {
918 asCArray<asSNameSpace*>& visibilityBuffer = namespaceVisibility.GetValue(cursor);
919 asUINT count = visibilityBuffer.GetLength();
920
921 for (asUINT i = 0; i < count; ++i)
922 {
923 asSNameSpace* visibleNameSpace = visibilityBuffer[i];
924 if (!visited.Exists(visibleNameSpace) && !pending.Exists(visibleNameSpace))
925 {
926 pending.PushLast(visibleNameSpace);
927 }
928 }
929 }
930}
931
932asSNameSpace *asCBuilder::FindNextVisibleNamespace(const asCArray<asSNameSpace*>& visited, asCArray<asSNameSpace*>& pending, asSNameSpace *parentNs, bool* checkAmbiguous)
933{

Callers 1

SymbolLookupMethod · 0.80

Calls 5

MoveToMethod · 0.80
PushLastMethod · 0.80
GetValueMethod · 0.45
GetLengthMethod · 0.45
ExistsMethod · 0.45

Tested by

no test coverage detected