Class: YARD::Tags::Tag
- Inherits:
-
Object
- Object
- YARD::Tags::Tag
- Defined in:
- lib/yard/tags/tag.rb
Overview
Direct Known Subclasses
Instance Attribute Summary collapse
-
#name ⇒ String
A name associated with the tag.
-
#object ⇒ CodeObjects::Base
The associated object.
-
#tag_name ⇒ String
The name of the tag.
- #text ⇒ String?
- #types ⇒ Array<String>?
Instance Method Summary collapse
-
#explain_types ⇒ String?
Provides a plain English summary of the type specification, or nil if no types are provided or parseable.
-
#initialize(tag_name, text, types = nil, name = nil) ⇒ Tag
constructor
Creates a new tag object with a tag name and text.
-
#type ⇒ String
Convenience method to access the first type specified.
Constructor Details
#initialize(tag_name, text, types = nil, name = nil) ⇒ Tag
Creates a new tag object with a tag name and text. Optionally, formally declared types and a key name can be specified.
Types are mainly for meta tags that rely on type information, such as param, return, etc.
Key names are for tags that declare meta data for a specific key or name, such as param, raise, etc.
44 45 46 47 48 49 |
# File 'lib/yard/tags/tag.rb', line 44 def initialize(tag_name, text, types = nil, name = nil) @tag_name = tag_name.to_s @text = text @name = name @types = (types ? [types].flatten.compact : nil) end |
Instance Attribute Details
#name ⇒ String
Returns a name associated with the tag.
26 27 28 |
# File 'lib/yard/tags/tag.rb', line 26 def name @name end |
#object ⇒ CodeObjects::Base
Returns the associated object.
29 30 31 |
# File 'lib/yard/tags/tag.rb', line 29 def object @object end |
#tag_name ⇒ String
Returns the name of the tag.
15 16 17 |
# File 'lib/yard/tags/tag.rb', line 15 def tag_name @tag_name end |
Instance Method Details
#explain_types ⇒ String?
Provides a plain English summary of the type specification, or nil if no types are provided or parseable.
65 66 67 68 |
# File 'lib/yard/tags/tag.rb', line 65 def explain_types return nil if !types || types.empty? TypesExplainer.explain(*types) end |
#type ⇒ String
Convenience method to access the first type specified. This should mainly be used for tags that only specify one type.
56 57 58 |
# File 'lib/yard/tags/tag.rb', line 56 def type types.first end |