protected Builder(BlockId id) { _id = id; _predecessors = ImmutableSortedSet.CreateBuilder <BlockId>(); _successors = ImmutableSortedSet.CreateBuilder <BlockId>(); }
protected abstract Block ToBlock( BlockId id, ImmutableSortedSet <BlockId> predecssors, ImmutableSortedSet <BlockId> successors);
public TBlock GetBlock(BlockId id) => _idToBlockMap[id];
public void AddNode(BlockId id) { var blockBuilder = CreateBlockBuilder(id); _builders.Add(id, blockBuilder); }
public TBlockBuilder GetBlockBuilder(BlockId id) { return(_builders[id]); }
protected abstract TBlockBuilder CreateBlockBuilder(BlockId id);
protected Block(BlockId id, ImmutableSortedSet <BlockId> predecessors, ImmutableSortedSet <BlockId> successors) { this.ID = id; this.Predecessors = predecessors; this.Successors = successors; }