abstract_graph 1.1.0 → 1.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +13 -5
- data/Rakefile +11 -1
- data/lib/abstract_graph.rb +1 -0
- data/lib/abstract_graph/composition.rb +1 -1
- data/lib/abstract_graph/composition/edge.rb +5 -0
- data/lib/abstract_graph/composition/edge/initialize.rb +6 -0
- data/lib/abstract_graph/composition/edge/is_coincident.rb +5 -2
- data/lib/abstract_graph/composition/unique_name_collection.rb +28 -0
- data/lib/abstract_graph/composition/unique_name_collection/add.rb +23 -0
- data/lib/abstract_graph/composition/unique_name_collection/delete.rb +20 -0
- data/lib/abstract_graph/composition/unique_name_collection/dup.rb +24 -0
- data/lib/abstract_graph/composition/unique_name_collection/each.rb +18 -0
- data/lib/abstract_graph/composition/unique_name_collection/find.rb +18 -0
- data/lib/abstract_graph/composition/unique_name_collection/initialize.rb +22 -0
- data/lib/abstract_graph/composition/unique_name_collection/link.rb +42 -0
- data/lib/abstract_graph/composition/unique_name_collection/method_missing.rb +18 -0
- data/lib/abstract_graph/composition/unique_name_collection/rename.rb +34 -0
- data/lib/abstract_graph/composition/unique_name_collection/ticket.rb +18 -0
- data/lib/abstract_graph/composition/unique_name_collection/ticket/get.rb +20 -0
- data/lib/abstract_graph/composition/unique_name_collection/ticket/initialize.rb +20 -0
- data/lib/abstract_graph/composition/unique_name_collection/ticket/set.rb +20 -0
- data/lib/abstract_graph/composition/vertex.rb +5 -1
- data/lib/abstract_graph/composition/vertex/initialize.rb +6 -0
- data/lib/abstract_graph/graph.rb +1 -0
- data/lib/abstract_graph/graph/add_edge.rb +9 -8
- data/lib/abstract_graph/graph/add_vertex.rb +5 -2
- data/lib/abstract_graph/graph/adjacency_list.rb +8 -3
- data/lib/abstract_graph/graph/change_edge_name.rb +6 -4
- data/lib/abstract_graph/graph/change_vertex_name.rb +5 -3
- data/lib/abstract_graph/graph/connected.rb +36 -0
- data/lib/abstract_graph/graph/delete_edge.rb +5 -4
- data/lib/abstract_graph/graph/delete_vertex.rb +5 -4
- data/lib/abstract_graph/graph/dup.rb +8 -3
- data/lib/abstract_graph/graph/get_edge_name.rb +7 -4
- data/lib/abstract_graph/graph/has_edge.rb +6 -3
- data/lib/abstract_graph/graph/has_vertex.rb +6 -3
- data/lib/abstract_graph/graph/initialize.rb +5 -1
- data/lib/abstract_graph/graph/is_adjacent.rb +9 -7
- data/lib/abstract_graph/graph/merge_vertices.rb +16 -14
- data/lib/abstract_graph/graph/split_vertex.rb +10 -7
- data/lib/abstract_graph/graph/templates/complete_bipartite_graph.rb +7 -5
- data/lib/abstract_graph/graph/templates/complete_graph.rb +8 -6
- data/lib/abstract_graph/graph/templates/cycle_graph.rb +6 -5
- data/lib/abstract_graph/graph/templates/path_graph.rb +6 -4
- data/lib/abstract_graph/graph/templates/petersen_graph.rb +8 -2
- data/lib/abstract_graph/version.rb +1 -1
- data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/add_spec.rb +0 -0
- data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/dup_spec.rb +0 -0
- data/spec/abstract_graph/composition/unique_name_collection/each_spec.rb +38 -0
- data/spec/abstract_graph/composition/unique_name_collection/find_spec.rb +33 -0
- data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/initialize_spec.rb +0 -0
- data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/link_spec.rb +0 -0
- data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/method_missing_spec.rb +4 -15
- data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/rename_spec.rb +1 -1
- data/spec/abstract_graph/composition/{uniquenamecollection_spec.rb → unique_name_collection_spec.rb} +0 -0
- data/spec/abstract_graph/graph/add_edge_spec.rb +1 -1
- data/spec/abstract_graph/graph/connected_spec.rb +39 -0
- data/tasks/benchmark.rb +47 -0
- data/tasks/create_method.rb +64 -0
- data/tasks/list_methods.rb +5 -0
- metadata +45 -32
- data/lib/abstract_graph/composition/uniquenamecollection.rb +0 -22
- data/lib/abstract_graph/composition/uniquenamecollection/add.rb +0 -19
- data/lib/abstract_graph/composition/uniquenamecollection/dup.rb +0 -20
- data/lib/abstract_graph/composition/uniquenamecollection/initialize.rb +0 -14
- data/lib/abstract_graph/composition/uniquenamecollection/link.rb +0 -32
- data/lib/abstract_graph/composition/uniquenamecollection/method_missing.rb +0 -14
- data/lib/abstract_graph/composition/uniquenamecollection/rename.rb +0 -28
- data/lib/abstract_graph/composition/vertex/delete.rb +0 -12
- data/spec/abstract_graph/composition/vertex/delete_spec.rb +0 -12
@@ -4,18 +4,20 @@ module AbstractGraph
|
|
4
4
|
class Graph
|
5
5
|
class << self
|
6
6
|
|
7
|
-
#
|
8
|
-
#
|
9
|
-
#
|
10
|
-
#
|
7
|
+
# d: Create a complete graph K(n).
|
8
|
+
# a: It adds n vertices, named "v(i)", i=2^0..n-1. Then adds the edges, the name being sum
|
9
|
+
# "e(i)" where i is sum of two connecting vertices.
|
10
|
+
# t: n * t(add_vertex) + C(n,2) * t(add_edge)
|
11
|
+
# p: n is number of vertices
|
12
|
+
# r: a complete graph
|
11
13
|
def complete_graph n
|
12
14
|
result = new
|
13
15
|
vertexNames = n.times.collect { |i| 2**i }
|
14
16
|
vertexNames.each do |i|
|
15
17
|
result.add_vertex "v#{i}"
|
16
18
|
end
|
17
|
-
vertexNames.combination(2).each do |i|
|
18
|
-
result.add_edge( "e#{i
|
19
|
+
vertexNames.combination(2).each do |i,j|
|
20
|
+
result.add_edge( "e#{i+j}", "v#{i}", "v#{j}" )
|
19
21
|
end
|
20
22
|
result
|
21
23
|
end
|
@@ -4,11 +4,12 @@ module AbstractGraph
|
|
4
4
|
class Graph
|
5
5
|
class << self
|
6
6
|
|
7
|
-
#
|
8
|
-
#
|
9
|
-
#
|
10
|
-
#
|
11
|
-
#
|
7
|
+
# d: Create a cycle graph
|
8
|
+
# a: Create the vertices and edges at the same time. The naming scheme is power of two for
|
9
|
+
# vertices and the sum of vertices for edges.
|
10
|
+
# t: n * (t(add_vertex) + t(add_edge))
|
11
|
+
# p: n is the number of vertices
|
12
|
+
# r: a cycle graph
|
12
13
|
def cycle_graph n
|
13
14
|
result = new
|
14
15
|
vertexNames = (n-1).times.collect { |i| 2**(i + 1) }
|
@@ -4,10 +4,12 @@ module AbstractGraph
|
|
4
4
|
class Graph
|
5
5
|
class << self
|
6
6
|
|
7
|
-
#
|
8
|
-
#
|
9
|
-
#
|
10
|
-
#
|
7
|
+
# d: Returns a path.
|
8
|
+
# a: It creates a path.by adding vertices and edges at the same time, vertices named "v(i)"
|
9
|
+
# i=2^0..n-1, and edges "e(i)" where i is sum of vertices adjacent.
|
10
|
+
# t: n * (t(add_vertex) + t(add_edge))
|
11
|
+
# p: n is the number of vertices
|
12
|
+
# r: a path graph
|
11
13
|
def path_graph n
|
12
14
|
result = new
|
13
15
|
|
@@ -4,6 +4,12 @@ module AbstractGraph
|
|
4
4
|
class Graph
|
5
5
|
class << self
|
6
6
|
|
7
|
+
# d: Create a peterson graph.
|
8
|
+
# a: It adds 10 vertices "v(i)", i=2^0..9. Then adds the specified edges, according to the
|
9
|
+
# specified edges array.
|
10
|
+
# t: constant
|
11
|
+
# p: none
|
12
|
+
# r: a peterson graph
|
7
13
|
# create a petersen graph.
|
8
14
|
# ie, a 3 regular graph with 10 vertices and 15 edges
|
9
15
|
def petersen_graph
|
@@ -24,8 +30,8 @@ module AbstractGraph
|
|
24
30
|
[4, 9], [5, 8], [5, 7],
|
25
31
|
[6, 9], [7, 9], [6, 8]]
|
26
32
|
|
27
|
-
specifiedEdges.each do |
|
28
|
-
result.add_edge "e#{vertexNames[
|
33
|
+
specifiedEdges.each do |edge1, edge2|
|
34
|
+
result.add_edge "e#{vertexNames[edge1] + vertexNames[edge2]}", "v#{vertexNames[edge1]}", "v#{vertexNames[edge2]}"
|
29
35
|
end
|
30
36
|
|
31
37
|
result
|
data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/add_spec.rb
RENAMED
File without changes
|
data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/dup_spec.rb
RENAMED
File without changes
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module AbstractGraph
|
4
|
+
module Composition
|
5
|
+
describe UniqueNameCollection do
|
6
|
+
|
7
|
+
before(:each) do
|
8
|
+
@collection = UniqueNameCollection.new
|
9
|
+
dummy = Dummy.new
|
10
|
+
dummy.name = "DummyName"
|
11
|
+
@collection.add dummy
|
12
|
+
dummy2 = Dummy.new
|
13
|
+
dummy2.name = "DummyName2"
|
14
|
+
@collection.add dummy2
|
15
|
+
end
|
16
|
+
|
17
|
+
describe "#each(&Block)" do
|
18
|
+
|
19
|
+
it "returns an object of type Enumerable" do
|
20
|
+
@collection.each.should be_an_instance_of(Enumerator)
|
21
|
+
end
|
22
|
+
|
23
|
+
it "returns an object of type Hash if passed a block" do
|
24
|
+
@collection.each{}.should be_an_instance_of(Hash)
|
25
|
+
@collection.each{|d|}.should be_an_instance_of(Hash)
|
26
|
+
end
|
27
|
+
|
28
|
+
it "passes each object back to the block of arity 1" do
|
29
|
+
@collection.each do |d|
|
30
|
+
d.should be_an_instance_of( Dummy )
|
31
|
+
end
|
32
|
+
end
|
33
|
+
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
@@ -0,0 +1,33 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module AbstractGraph
|
4
|
+
module Composition
|
5
|
+
describe UniqueNameCollection do
|
6
|
+
|
7
|
+
before(:each) do
|
8
|
+
@collection = UniqueNameCollection.new
|
9
|
+
@dummy = Dummy.new
|
10
|
+
@name = "DummyName"
|
11
|
+
@dummy.name = @name
|
12
|
+
@collection.add(@dummy)
|
13
|
+
end
|
14
|
+
|
15
|
+
describe "#find(name)" do
|
16
|
+
|
17
|
+
it "returns an object of the right class" do
|
18
|
+
@collection.find(@name).should be_an_instance_of(Dummy)
|
19
|
+
end
|
20
|
+
|
21
|
+
it "should return the correct object" do
|
22
|
+
@collection.find(@name).should eql(@dummy)
|
23
|
+
end
|
24
|
+
|
25
|
+
it "should return nil if a name that doesn't exist is passed" do
|
26
|
+
@collection.find("BadName").should be_nil
|
27
|
+
end
|
28
|
+
|
29
|
+
end
|
30
|
+
|
31
|
+
end
|
32
|
+
end
|
33
|
+
end
|
File without changes
|
data/spec/abstract_graph/composition/{uniquenamecollection → unique_name_collection}/link_spec.rb
RENAMED
File without changes
|
@@ -24,23 +24,12 @@ module AbstractGraph
|
|
24
24
|
|
25
25
|
end
|
26
26
|
|
27
|
-
describe "#
|
27
|
+
describe "#each" do
|
28
28
|
|
29
|
-
it "
|
30
|
-
@collection.
|
31
|
-
|
32
|
-
end
|
33
|
-
|
34
|
-
end
|
35
|
-
|
36
|
-
describe "#each_key" do
|
37
|
-
|
38
|
-
it "goes through every name in the collection" do
|
39
|
-
alphabet = ""
|
40
|
-
@collection.each_key do |c|
|
41
|
-
alphabet += c
|
29
|
+
it "goes through every object in the collection" do
|
30
|
+
@collection.each do |c|
|
31
|
+
c.should be_an_instance_of(Dummy)
|
42
32
|
end
|
43
|
-
alphabet.should == "abcdefghijklmnopqrstuvwxyz"
|
44
33
|
end
|
45
34
|
|
46
35
|
end
|
data/spec/abstract_graph/composition/{uniquenamecollection_spec.rb → unique_name_collection_spec.rb}
RENAMED
File without changes
|
@@ -37,7 +37,7 @@ module AbstractGraph
|
|
37
37
|
it "returns nil if any of the vertices don't exist" do
|
38
38
|
@graph.add_edge( "MyEdge", @vertex1, "randomString" ).should be_nil
|
39
39
|
@graph.add_edge( "MyEdge", "randomString", @vertex1 ).should be_nil
|
40
|
-
@graph.edges["MyEdge"].should be_nil
|
40
|
+
@graph.edges.collection["MyEdge"].should be_nil
|
41
41
|
end
|
42
42
|
|
43
43
|
end
|
@@ -0,0 +1,39 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
module AbstractGraph
|
4
|
+
describe Graph do
|
5
|
+
|
6
|
+
before :all do
|
7
|
+
end
|
8
|
+
|
9
|
+
before :each do
|
10
|
+
end
|
11
|
+
|
12
|
+
describe "#connected?" do
|
13
|
+
|
14
|
+
it "returns true for any path" do
|
15
|
+
Graph.path_graph( 3 ).connected?.should be_true
|
16
|
+
Graph.path_graph( 1 ).connected?.should be_true
|
17
|
+
Graph.path_graph( 10 ).connected?.should be_true
|
18
|
+
end
|
19
|
+
|
20
|
+
it "returns true for an empty graph" do
|
21
|
+
Graph.new.connected?.should be_true
|
22
|
+
end
|
23
|
+
|
24
|
+
it "returns true for any cycle" do
|
25
|
+
Graph.cycle_graph( 3 ).connected?.should be_true
|
26
|
+
Graph.cycle_graph( 5 ).connected?.should be_true
|
27
|
+
end
|
28
|
+
|
29
|
+
it "returns false after a path loses an edge" do
|
30
|
+
graph3path = Graph.path_graph(3)
|
31
|
+
graph3path.connected?.should be_true
|
32
|
+
graph3path.delete_edge! "e3"
|
33
|
+
graph3path.connected?.should be_false
|
34
|
+
end
|
35
|
+
|
36
|
+
end
|
37
|
+
|
38
|
+
end
|
39
|
+
end
|
data/tasks/benchmark.rb
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
namespace :benchmark do
|
2
|
+
|
3
|
+
desc "Test that benchmarks work"
|
4
|
+
task :test do
|
5
|
+
p "Setting up benchmarking"
|
6
|
+
setup_benchmark
|
7
|
+
|
8
|
+
p "Testing benchmarking"
|
9
|
+
Timer.start
|
10
|
+
AbstractGraph::Graph.petersen_graph
|
11
|
+
end
|
12
|
+
|
13
|
+
desc "Benchmark a file with AbstractGraph code"
|
14
|
+
task :run, :file_path do |t, args|
|
15
|
+
setup_benchmark
|
16
|
+
Timer.start
|
17
|
+
require args[:file_path]
|
18
|
+
end
|
19
|
+
|
20
|
+
module Timer
|
21
|
+
class << self
|
22
|
+
def start
|
23
|
+
@start_time = Time.now
|
24
|
+
end
|
25
|
+
|
26
|
+
def start_method method
|
27
|
+
p "start #{method} #{'%.8f' % (Time.now - @start_time)}"
|
28
|
+
end
|
29
|
+
|
30
|
+
def end_method method
|
31
|
+
p "end #{method} #{'%.8f' % (Time.now - @start_time)}"
|
32
|
+
end
|
33
|
+
end
|
34
|
+
end
|
35
|
+
|
36
|
+
def setup_benchmark
|
37
|
+
AbstractGraph::Graph.instance_methods(false).each do |method|
|
38
|
+
AbstractGraph::Graph.send( :alias_method, "benched_#{method}", method )
|
39
|
+
AbstractGraph::Graph.send( :define_method, method ) do |*args, &block|
|
40
|
+
Timer.start_method method
|
41
|
+
send( "benched_#{method}", *args, &block )
|
42
|
+
Timer.end_method method
|
43
|
+
end
|
44
|
+
end
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
@@ -0,0 +1,64 @@
|
|
1
|
+
desc "Create a method and corresponding test - run with wanted lib file"
|
2
|
+
task :create_method, :method_path do |t, args|
|
3
|
+
method_path = args[:method_path]
|
4
|
+
if File.extname(method_path) == ""
|
5
|
+
method_path << ".rb"
|
6
|
+
end
|
7
|
+
method_directories, method_name = File.split(method_path)
|
8
|
+
method_name = File.basename(method_name, ".rb")
|
9
|
+
|
10
|
+
lib_path = "lib/" + method_path
|
11
|
+
spec_path = File.join "spec/", method_directories, method_name + "_spec.rb"
|
12
|
+
lib_require_path = "lib/" + method_directories + ".rb"
|
13
|
+
|
14
|
+
|
15
|
+
if File.file?( lib_path ) || File.file?( spec_path )
|
16
|
+
puts "This file already exists"
|
17
|
+
next
|
18
|
+
end
|
19
|
+
unless File.file?( lib_require_path )
|
20
|
+
puts "No place to put the require"
|
21
|
+
next
|
22
|
+
end
|
23
|
+
|
24
|
+
# Create the filler
|
25
|
+
lib_fill = "# required in \"#{method_directories}\"\n\n"
|
26
|
+
spec_fill = "require 'spec_helper'\n\n"
|
27
|
+
|
28
|
+
modules = method_directories.split(/\//)
|
29
|
+
modules.map! do |modulez|
|
30
|
+
modulez.capitalize.gsub(/_./) {|s| s[1].capitalize}
|
31
|
+
end
|
32
|
+
last_module = modules.pop
|
33
|
+
|
34
|
+
modules.each do |modulez|
|
35
|
+
lib_fill << "module #{modulez}\n"
|
36
|
+
spec_fill << "module #{modulez}\n"
|
37
|
+
end
|
38
|
+
|
39
|
+
lib_fill << "class #{last_module}\n"
|
40
|
+
spec_fill << "describe #{last_module} do\n"
|
41
|
+
|
42
|
+
lib_fill << "\n# d:\n# a:\n# t:\n# p:\n# r:\ndef #{method_name}\nend\n\n"
|
43
|
+
spec_fill << "\ndescribe \"##{method_name}\" do\nend\n\n"
|
44
|
+
|
45
|
+
modules.size.next.times do |i|
|
46
|
+
lib_fill << "end\n"
|
47
|
+
spec_fill << "end\n"
|
48
|
+
end
|
49
|
+
|
50
|
+
|
51
|
+
puts "Adding #{lib_path}"
|
52
|
+
File.open( lib_path, "w" ) do |file|
|
53
|
+
file << lib_fill
|
54
|
+
end
|
55
|
+
puts "Adding #{spec_path}"
|
56
|
+
File.open( spec_path, "w" ) do |file|
|
57
|
+
file << spec_fill
|
58
|
+
end
|
59
|
+
puts "Updating #{lib_require_path}"
|
60
|
+
File.open( lib_require_path, "a" ) do |file|
|
61
|
+
file.write "require \"#{method_directories}/#{method_name}\""
|
62
|
+
end
|
63
|
+
end
|
64
|
+
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: abstract_graph
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1
|
4
|
+
version: 1.2.1
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Austin Lee ~D4L
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date:
|
11
|
+
date: 2014-03-10 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: rspec
|
@@ -24,9 +24,8 @@ dependencies:
|
|
24
24
|
- - ~>
|
25
25
|
- !ruby/object:Gem::Version
|
26
26
|
version: '2.5'
|
27
|
-
description:
|
28
|
-
|
29
|
-
mathematical graphs and perform operatations on them.
|
27
|
+
description: ! "Abstract Graph is a graphing library that can create\n mathematical
|
28
|
+
graphs and perform operatations on them."
|
30
29
|
email:
|
31
30
|
- Austin.Lee.D4L@gmail.com
|
32
31
|
executables: []
|
@@ -44,15 +43,21 @@ files:
|
|
44
43
|
- lib/abstract_graph/composition/edge.rb
|
45
44
|
- lib/abstract_graph/composition/edge/initialize.rb
|
46
45
|
- lib/abstract_graph/composition/edge/is_coincident.rb
|
47
|
-
- lib/abstract_graph/composition/
|
48
|
-
- lib/abstract_graph/composition/
|
49
|
-
- lib/abstract_graph/composition/
|
50
|
-
- lib/abstract_graph/composition/
|
51
|
-
- lib/abstract_graph/composition/
|
52
|
-
- lib/abstract_graph/composition/
|
53
|
-
- lib/abstract_graph/composition/
|
46
|
+
- lib/abstract_graph/composition/unique_name_collection.rb
|
47
|
+
- lib/abstract_graph/composition/unique_name_collection/add.rb
|
48
|
+
- lib/abstract_graph/composition/unique_name_collection/delete.rb
|
49
|
+
- lib/abstract_graph/composition/unique_name_collection/dup.rb
|
50
|
+
- lib/abstract_graph/composition/unique_name_collection/each.rb
|
51
|
+
- lib/abstract_graph/composition/unique_name_collection/find.rb
|
52
|
+
- lib/abstract_graph/composition/unique_name_collection/initialize.rb
|
53
|
+
- lib/abstract_graph/composition/unique_name_collection/link.rb
|
54
|
+
- lib/abstract_graph/composition/unique_name_collection/method_missing.rb
|
55
|
+
- lib/abstract_graph/composition/unique_name_collection/rename.rb
|
56
|
+
- lib/abstract_graph/composition/unique_name_collection/ticket.rb
|
57
|
+
- lib/abstract_graph/composition/unique_name_collection/ticket/get.rb
|
58
|
+
- lib/abstract_graph/composition/unique_name_collection/ticket/initialize.rb
|
59
|
+
- lib/abstract_graph/composition/unique_name_collection/ticket/set.rb
|
54
60
|
- lib/abstract_graph/composition/vertex.rb
|
55
|
-
- lib/abstract_graph/composition/vertex/delete.rb
|
56
61
|
- lib/abstract_graph/composition/vertex/initialize.rb
|
57
62
|
- lib/abstract_graph/graph.rb
|
58
63
|
- lib/abstract_graph/graph/add_edge.rb
|
@@ -60,6 +65,7 @@ files:
|
|
60
65
|
- lib/abstract_graph/graph/adjacency_list.rb
|
61
66
|
- lib/abstract_graph/graph/change_edge_name.rb
|
62
67
|
- lib/abstract_graph/graph/change_vertex_name.rb
|
68
|
+
- lib/abstract_graph/graph/connected.rb
|
63
69
|
- lib/abstract_graph/graph/delete_edge.rb
|
64
70
|
- lib/abstract_graph/graph/delete_vertex.rb
|
65
71
|
- lib/abstract_graph/graph/dup.rb
|
@@ -82,14 +88,15 @@ files:
|
|
82
88
|
- spec/abstract_graph/composition/edge/name_spec.rb
|
83
89
|
- spec/abstract_graph/composition/edge/vertices_spec.rb
|
84
90
|
- spec/abstract_graph/composition/edge_spec.rb
|
85
|
-
- spec/abstract_graph/composition/
|
86
|
-
- spec/abstract_graph/composition/
|
87
|
-
- spec/abstract_graph/composition/
|
88
|
-
- spec/abstract_graph/composition/
|
89
|
-
- spec/abstract_graph/composition/
|
90
|
-
- spec/abstract_graph/composition/
|
91
|
-
- spec/abstract_graph/composition/
|
92
|
-
- spec/abstract_graph/composition/
|
91
|
+
- spec/abstract_graph/composition/unique_name_collection/add_spec.rb
|
92
|
+
- spec/abstract_graph/composition/unique_name_collection/dup_spec.rb
|
93
|
+
- spec/abstract_graph/composition/unique_name_collection/each_spec.rb
|
94
|
+
- spec/abstract_graph/composition/unique_name_collection/find_spec.rb
|
95
|
+
- spec/abstract_graph/composition/unique_name_collection/initialize_spec.rb
|
96
|
+
- spec/abstract_graph/composition/unique_name_collection/link_spec.rb
|
97
|
+
- spec/abstract_graph/composition/unique_name_collection/method_missing_spec.rb
|
98
|
+
- spec/abstract_graph/composition/unique_name_collection/rename_spec.rb
|
99
|
+
- spec/abstract_graph/composition/unique_name_collection_spec.rb
|
93
100
|
- spec/abstract_graph/composition/vertex/initialize_spec.rb
|
94
101
|
- spec/abstract_graph/composition/vertex/name_spec.rb
|
95
102
|
- spec/abstract_graph/composition/vertex/value_spec.rb
|
@@ -99,6 +106,7 @@ files:
|
|
99
106
|
- spec/abstract_graph/graph/adjacency_list_spec.rb
|
100
107
|
- spec/abstract_graph/graph/change_edge_name_spec.rb
|
101
108
|
- spec/abstract_graph/graph/change_vertex_name_spec.rb
|
109
|
+
- spec/abstract_graph/graph/connected_spec.rb
|
102
110
|
- spec/abstract_graph/graph/delete_edge_spec.rb
|
103
111
|
- spec/abstract_graph/graph/delete_vertex_spec.rb
|
104
112
|
- spec/abstract_graph/graph/dup_spec.rb
|
@@ -118,6 +126,9 @@ files:
|
|
118
126
|
- spec/abstract_graph_spec.rb
|
119
127
|
- spec/dummy_helper.rb
|
120
128
|
- spec/spec_helper.rb
|
129
|
+
- tasks/benchmark.rb
|
130
|
+
- tasks/create_method.rb
|
131
|
+
- tasks/list_methods.rb
|
121
132
|
homepage: https://github.com/D4L/abstractGraph
|
122
133
|
licenses:
|
123
134
|
- MIT
|
@@ -128,17 +139,17 @@ require_paths:
|
|
128
139
|
- lib
|
129
140
|
required_ruby_version: !ruby/object:Gem::Requirement
|
130
141
|
requirements:
|
131
|
-
- - '>='
|
142
|
+
- - ! '>='
|
132
143
|
- !ruby/object:Gem::Version
|
133
144
|
version: '0'
|
134
145
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
135
146
|
requirements:
|
136
|
-
- - '>='
|
147
|
+
- - ! '>='
|
137
148
|
- !ruby/object:Gem::Version
|
138
149
|
version: '0'
|
139
150
|
requirements: []
|
140
151
|
rubyforge_project:
|
141
|
-
rubygems_version: 2.0
|
152
|
+
rubygems_version: 2.2.0
|
142
153
|
signing_key:
|
143
154
|
specification_version: 4
|
144
155
|
summary: Mathmatical graph analysis software.
|
@@ -148,14 +159,15 @@ test_files:
|
|
148
159
|
- spec/abstract_graph/composition/edge/name_spec.rb
|
149
160
|
- spec/abstract_graph/composition/edge/vertices_spec.rb
|
150
161
|
- spec/abstract_graph/composition/edge_spec.rb
|
151
|
-
- spec/abstract_graph/composition/
|
152
|
-
- spec/abstract_graph/composition/
|
153
|
-
- spec/abstract_graph/composition/
|
154
|
-
- spec/abstract_graph/composition/
|
155
|
-
- spec/abstract_graph/composition/
|
156
|
-
- spec/abstract_graph/composition/
|
157
|
-
- spec/abstract_graph/composition/
|
158
|
-
- spec/abstract_graph/composition/
|
162
|
+
- spec/abstract_graph/composition/unique_name_collection/add_spec.rb
|
163
|
+
- spec/abstract_graph/composition/unique_name_collection/dup_spec.rb
|
164
|
+
- spec/abstract_graph/composition/unique_name_collection/each_spec.rb
|
165
|
+
- spec/abstract_graph/composition/unique_name_collection/find_spec.rb
|
166
|
+
- spec/abstract_graph/composition/unique_name_collection/initialize_spec.rb
|
167
|
+
- spec/abstract_graph/composition/unique_name_collection/link_spec.rb
|
168
|
+
- spec/abstract_graph/composition/unique_name_collection/method_missing_spec.rb
|
169
|
+
- spec/abstract_graph/composition/unique_name_collection/rename_spec.rb
|
170
|
+
- spec/abstract_graph/composition/unique_name_collection_spec.rb
|
159
171
|
- spec/abstract_graph/composition/vertex/initialize_spec.rb
|
160
172
|
- spec/abstract_graph/composition/vertex/name_spec.rb
|
161
173
|
- spec/abstract_graph/composition/vertex/value_spec.rb
|
@@ -165,6 +177,7 @@ test_files:
|
|
165
177
|
- spec/abstract_graph/graph/adjacency_list_spec.rb
|
166
178
|
- spec/abstract_graph/graph/change_edge_name_spec.rb
|
167
179
|
- spec/abstract_graph/graph/change_vertex_name_spec.rb
|
180
|
+
- spec/abstract_graph/graph/connected_spec.rb
|
168
181
|
- spec/abstract_graph/graph/delete_edge_spec.rb
|
169
182
|
- spec/abstract_graph/graph/delete_vertex_spec.rb
|
170
183
|
- spec/abstract_graph/graph/dup_spec.rb
|