Sha256: 3c7e3cb1ac87e723bf02a3da11848aa72df29399d93bb2c1b619b2fefc219178

Contents?: true

Size: 649 Bytes

Versions: 11

Compression:

Stored size: 649 Bytes

Contents

# typed: strict

module VisualizePackwerk
  # This stores graphviz-independent views of our package graph.
  # It should be optimized for fast lookup (leveraging internal indexes, which are stable due to the immutability of the package nodes)
  # A `TeamGraph` should be able to consume this and basically just create a reduced version
  # Lastly, each one should implement a common interface, and graphviz should use that interface and take in either types of graph via the interface
  module GraphInterface
    extend T::Sig
    extend T::Helpers
    interface!

    sig { abstract.returns(T::Set[NodeInterface]) }
    def nodes
    end
  end
end

Version data entries

11 entries across 11 versions & 1 rubygems

Version Path
visualize_packwerk-0.2.3 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.2.1 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.2.0 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.1.3 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.1.2 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.1.1 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.1.0 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.0.6 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.0.5 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.0.4 lib/visualize_packwerk/graph_interface.rb
visualize_packwerk-0.0.1 lib/visualize_packwerk/graph_interface.rb