Class: Gollum::Git::Tree
- Inherits:
-
Object
- Object
- Gollum::Git::Tree
- Defined in:
- lib/rugged_adapter/git_layer_rugged.rb
Instance Method Summary collapse
- #/(file) ⇒ Object
- #[](i) ⇒ Object
- #blobs ⇒ Object
- #id ⇒ Object
-
#initialize(tree) ⇒ Tree
constructor
A new instance of Tree.
- #keys ⇒ Object
Constructor Details
#initialize(tree) ⇒ Tree
Returns a new instance of Tree.
648 649 650 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 648 def initialize(tree) @tree = tree end |
Instance Method Details
#/(file) ⇒ Object
664 665 666 667 668 669 670 671 672 673 674 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 664 def /(file) return self if file == '/' begin obj = @tree.path(file) rescue Rugged::TreeError return nil end return nil if obj.nil? obj = @tree.owner.lookup(obj[:oid]) obj.is_a?(Rugged::Tree) ? Gollum::Git::Tree.new(obj) : Gollum::Git::Blob.new(obj) end |
#[](i) ⇒ Object
656 657 658 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 656 def [](i) @tree[i] end |
#blobs ⇒ Object
676 677 678 679 680 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 676 def blobs blobs = [] @tree.each_blob {|blob| blobs << Gollum::Git::Blob.new(@tree.owner.lookup(blob[:oid]), blob) } blobs end |
#id ⇒ Object
660 661 662 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 660 def id @tree.oid end |
#keys ⇒ Object
652 653 654 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 652 def keys @tree.map{|entry| entry[:name]} end |