Skip to content
Snippets Groups Projects

Add a SymbolKindTable to DAGCode, make infer_kinds() a transformation, test infer_kinds()

Open Matt Wala requested to merge sym-kind-table-in-dagcode into master

This adds a new attribute called sym_kind_table to DAGCode which is a SymbolKindTable. The function infer_kinds is changed to be a transformation that returns a modified DAGCode object with all symbol kinds inferred.

Since DAGCode is immutable, SymbolKindTable is changed to be immutable as well. The interface is changed to make SymbolKindTable free of side effects. To maintain efficiency, the underlying dicts are replaced with persistent dictionaries provided by pyrsistent.

This change also makes it an error when unification fails in SymbolKindTable.set()

Also this adds simple tests for kind inference.

Closes #35 by providing an interface to supply kind information when kind inference won't work

Edited by Matt Wala

Merge request reports

Pipeline #20959 passed

Pipeline passed for 551209ea on sym-kind-table-in-dagcode

The target branch master does not exist. Please restore it or use a different target branch.

Merge details

  • 0 commits and 1 merge commit will be added to .
  • Source branch will not be deleted.

Activity

Filter activity
  • Approvals
  • Assignees & reviewers
  • Comments (from bots)
  • Comments (from users)
  • Commits & branches
  • Edits
  • Labels
  • Lock status
  • Mentions
  • Merge request status
  • Tracking
Please register or sign in to reply
Loading