Class: Gitlab::Git::Diff
- Inherits:
-
Object
- Object
- Gitlab::Git::Diff
- Defined in:
- lib/gitlab_git/diff.rb
Constant Summary collapse
- BROKEN_DIFF =
"--broken-diff"
Instance Attribute Summary collapse
-
#a_mode ⇒ Object
Diff properties.
-
#b_mode ⇒ Object
Diff properties.
-
#deleted_file ⇒ Object
Stats properties.
-
#diff ⇒ Object
Diff properties.
-
#new_file ⇒ Object
Stats properties.
-
#new_path ⇒ Object
Diff properties.
-
#old_path ⇒ Object
Diff properties.
-
#raw_diff ⇒ Object
Returns the value of attribute raw_diff.
-
#renamed_file ⇒ Object
Stats properties.
Instance Method Summary collapse
-
#initialize(raw_diff) ⇒ Diff
constructor
A new instance of Diff.
- #serialize_keys ⇒ Object
- #to_hash ⇒ Object
Constructor Details
#initialize(raw_diff) ⇒ Diff
Returns a new instance of Diff.
17 18 19 20 21 22 23 24 25 |
# File 'lib/gitlab_git/diff.rb', line 17 def initialize(raw_diff) raise "Nil as raw diff passed" unless raw_diff if raw_diff.is_a?(Hash) init_from_hash(raw_diff) else init_from_grit(raw_diff) end end |
Instance Attribute Details
#a_mode ⇒ Object
Diff properties
12 13 14 |
# File 'lib/gitlab_git/diff.rb', line 12 def a_mode @a_mode end |
#b_mode ⇒ Object
Diff properties
12 13 14 |
# File 'lib/gitlab_git/diff.rb', line 12 def b_mode @b_mode end |
#deleted_file ⇒ Object
Stats properties
15 16 17 |
# File 'lib/gitlab_git/diff.rb', line 15 def deleted_file @deleted_file end |
#diff ⇒ Object
Diff properties
12 13 14 |
# File 'lib/gitlab_git/diff.rb', line 12 def diff @diff end |
#new_file ⇒ Object
Stats properties
15 16 17 |
# File 'lib/gitlab_git/diff.rb', line 15 def new_file @new_file end |
#new_path ⇒ Object
Diff properties
12 13 14 |
# File 'lib/gitlab_git/diff.rb', line 12 def new_path @new_path end |
#old_path ⇒ Object
Diff properties
12 13 14 |
# File 'lib/gitlab_git/diff.rb', line 12 def old_path @old_path end |
#raw_diff ⇒ Object
Returns the value of attribute raw_diff.
9 10 11 |
# File 'lib/gitlab_git/diff.rb', line 9 def raw_diff @raw_diff end |
#renamed_file ⇒ Object
Stats properties
15 16 17 |
# File 'lib/gitlab_git/diff.rb', line 15 def renamed_file @renamed_file end |
Instance Method Details
#serialize_keys ⇒ Object
27 28 29 |
# File 'lib/gitlab_git/diff.rb', line 27 def serialize_keys @serialize_keys ||= %w(diff new_path old_path a_mode b_mode new_file renamed_file deleted_file).map(&:to_sym) end |
#to_hash ⇒ Object
31 32 33 34 35 36 37 38 39 40 41 |
# File 'lib/gitlab_git/diff.rb', line 31 def to_hash hash = {} keys = serialize_keys keys.each do |key| hash[key] = send(key) end hash end |