class Gollum::Git::Tree

Public Class Methods

new(tree) click to toggle source
# File lib/rugged_adapter/git_layer_rugged.rb, line 631
def initialize(tree)
  @tree = tree
end

Public Instance Methods

/(file) click to toggle source
# File lib/rugged_adapter/git_layer_rugged.rb, line 647
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) click to toggle source
# File lib/rugged_adapter/git_layer_rugged.rb, line 639
def [](i)
  @tree[i]
end
blobs() click to toggle source
# File lib/rugged_adapter/git_layer_rugged.rb, line 659
def blobs
  blobs = []
  @tree.each_blob {|blob| blobs << Gollum::Git::Blob.new(@tree.owner.lookup(blob[:oid]), blob) }
  blobs
end
id() click to toggle source
# File lib/rugged_adapter/git_layer_rugged.rb, line 643
def id
  @tree.oid
end
keys() click to toggle source
# File lib/rugged_adapter/git_layer_rugged.rb, line 635
def keys
  @tree.map{|entry| entry[:name]}
end