Class: PrChangelog::ChangeLine
- Inherits:
-
Object
- Object
- PrChangelog::ChangeLine
- Defined in:
- lib/pr_changelog/change_line.rb
Overview
Represents a single change entry in the changelog
Constant Summary collapse
- SKIP_CI_PATTERN =
/\s*\[(skip ci)\]\s*/im
Instance Attribute Summary collapse
-
#pr_number ⇒ Object
readonly
Returns the value of attribute pr_number.
-
#tag ⇒ Object
readonly
Returns the value of attribute tag.
-
#title ⇒ Object
readonly
Returns the value of attribute title.
Instance Method Summary collapse
- #emojified_for(tag_object) ⇒ Object
- #formatted_title ⇒ Object
-
#initialize(pr_number, tag, title) ⇒ ChangeLine
constructor
A new instance of ChangeLine.
- #to_s ⇒ Object
Constructor Details
#initialize(pr_number, tag, title) ⇒ ChangeLine
Returns a new instance of ChangeLine.
10 11 12 13 14 |
# File 'lib/pr_changelog/change_line.rb', line 10 def initialize(pr_number, tag, title) @pr_number = pr_number @tag = tag @title = title.gsub(SKIP_CI_PATTERN, '') end |
Instance Attribute Details
#pr_number ⇒ Object (readonly)
Returns the value of attribute pr_number.
6 7 8 |
# File 'lib/pr_changelog/change_line.rb', line 6 def pr_number @pr_number end |
#tag ⇒ Object (readonly)
Returns the value of attribute tag.
6 7 8 |
# File 'lib/pr_changelog/change_line.rb', line 6 def tag @tag end |
#title ⇒ Object (readonly)
Returns the value of attribute title.
6 7 8 |
# File 'lib/pr_changelog/change_line.rb', line 6 def title @title end |
Instance Method Details
#emojified_for(tag_object) ⇒ Object
28 29 30 |
# File 'lib/pr_changelog/change_line.rb', line 28 def emojified_for(tag_object) "- #{pr_number}: #{tag_object.emoji} #{formatted_title}" end |
#formatted_title ⇒ Object
24 25 26 |
# File 'lib/pr_changelog/change_line.rb', line 24 def formatted_title title.first_uppercase end |
#to_s ⇒ Object
16 17 18 19 20 21 22 |
# File 'lib/pr_changelog/change_line.rb', line 16 def to_s if tag.nil? "- #{pr_number}: #{formatted_title}" else "- #{pr_number}: #{tag}: #{title.first_lowercase}" end end |