logic: implemented Python post processing to add ambiguous edges for unsolved symbols

This commit is contained in:
mlangkabel
2019-05-07 14:17:59 +02:00
parent 7f4e03b241
commit bdb4c78399
32 changed files with 494 additions and 30 deletions
+6
View File
@@ -34,8 +34,12 @@ public:
void addOccurrences(const std::vector<StorageOccurrence>& occurrences) override;
void addComponentAccess(const StorageComponentAccess& componentAccess) override;
void addComponentAccesses(const std::vector<StorageComponentAccess>& componentAccesses) override;
void addElementComponent(const StorageElementComponentData& data) /*override*/;
Id addError(const StorageErrorData& data) override;
void removeElement(const Id id);
void removeElements(const std::vector<Id>& ids);
const std::vector<StorageNode>& getStorageNodes() const override;
const std::vector<StorageFile>& getStorageFiles() const override;
const std::vector<StorageSymbol>& getStorageSymbols() const override;
@@ -48,6 +52,7 @@ public:
void startInjection() override;
void finishInjection() override;
void rollbackInjection();
void beforeErrorRecording();
void afterErrorRecording();
@@ -198,6 +203,7 @@ private:
void addAggregationEdgesToGraph(Id nodeId, const std::vector<StorageEdge>& edgesToAggregate, Graph* graph) const;
void addFileContentsToGraph(Id fileId, Graph* graph) const;
void addComponentAccessToGraph(Graph* graph) const;
void addComponentIsAmbiguousToGraph(Graph* graph) const;
void addCompleteFlagsToSourceLocationCollection(SourceLocationCollection* collection) const;
void addInheritanceChainsToGraph(const std::vector<Id>& nodeIds, Graph* graph) const;