| 34 | public: |
| 35 | // Identity of a single subgraph as a set of nodes. |
| 36 | class Identity : public gtl::FlatSet<const GenNode*> { |
| 37 | public: |
| 38 | using InitializerList = std::initializer_list<GenNode*>; |
| 39 | |
| 40 | Identity() = default; |
| 41 | Identity(InitializerList init); |
| 42 | bool operator<(const Identity& other) const; |
| 43 | bool operator==(const Identity& other) const; |
| 44 | |
| 45 | // Compute the hash. |
| 46 | size_t Hash() const; |
| 47 | }; |
| 48 | |
| 49 | explicit Subgraph(Identity id) : id_(std::move(id)), hash_(id_.Hash()) {} |
| 50 |
no outgoing calls