Sha256: 359a7d00a334b94de81746213007d79c70ec44dfba2ef627752951fe3e9efa13
Contents?: true
Size: 707 Bytes
Versions: 1
Compression:
Stored size: 707 Bytes
Contents
# frozen_string_literal: true require 'git_dump/path_object' class GitDump # Entry at path class Entry < PathObject attr_reader :sha, :mode def initialize(repo, dir, name, sha, mode) super(repo, dir, name) @sha, @mode = sha, (mode & 0o100) == 0 ? 0o644 : 0o755 end # Get size def size @size ||= repo.size(sha) end # Pipe for reading data def open(&block) repo.blob_pipe(sha, &block) end # Data def read repo.blob_read(sha) end # Write to path def write_to(path) repo.blob_unpack(sha, path, mode) end def inspect "#<#{self.class} sha=#{@sha} mode=#{format '%03o', @mode}>" end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
git_dump-0.1.1 | lib/git_dump/entry.rb |