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.
621 622 623 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 621 def initialize(tree) @tree = tree end |
Instance Method Details
#/(file) ⇒ Object
637 638 639 640 641 642 643 644 645 646 647 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 637 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
629 630 631 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 629 def [](i) @tree[i] end |
#blobs ⇒ Object
649 650 651 652 653 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 649 def blobs blobs = [] @tree.each_blob {|blob| blobs << Gollum::Git::Blob.new(@tree.owner.lookup(blob[:oid]), blob) } blobs end |
#id ⇒ Object
633 634 635 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 633 def id @tree.oid end |
#keys ⇒ Object
625 626 627 |
# File 'lib/rugged_adapter/git_layer_rugged.rb', line 625 def keys @tree.map{|entry| entry[:name]} end |