Module: Asciidoctor::Diagram::Extensions::DiagramSource
- Included in:
- BasicSource, ReaderSource
- Defined in:
- lib/asciidoctor-diagram/extensions.rb
Overview
This module describes the duck-typed interface that diagram sources must implement. Implementations may include this module but it is not required.
Instance Method Summary collapse
-
#attr(name, default_value = nil, inherit = true) ⇒ Object
abstract
Get the value for the specified attribute.
-
#base_dir ⇒ String
abstract
The base directory against which relative paths in this diagram should be resolved.
-
#code ⇒ String
abstract
The String representation of the source code for the diagram.
-
#create_image_metadata ⇒ Hash
Creates an image metadata Hash that will be stored to disk alongside the generated image file.
-
#image_name ⇒ String
abstract
The base name for the image file that will be produced.
-
#should_process?(image_file, image_metadata) ⇒ Boolean
Determines if the diagram should be regenerated or not.
-
#to_s ⇒ Object
Alias for code.
Instance Method Details
#attr(name, default_value = nil, inherit = true) ⇒ Object
Get the value for the specified attribute. First look in the attributes on this node and return the value of the attribute if found. Otherwise, if this node is a child of the Document node, look in the attributes of the Document node and return the value of the attribute if found. Otherwise, return the default value, which defaults to nil.
315 316 317 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 315 def attr(name, default_value = nil, inherit = true) raise NotImplementedError.new end |
#base_dir ⇒ String
Returns the base directory against which relative paths in this diagram should be resolved.
321 322 323 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 321 def base_dir raise NotImplementedError.new end |
#code ⇒ String
Returns the String representation of the source code for the diagram.
299 300 301 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 299 def code raise NotImplementedError.new end |
#create_image_metadata ⇒ Hash
Creates an image metadata Hash that will be stored to disk alongside the generated image file. The contents of this Hash are reread during subsequent document processing and then passed to the should_process? method where it can be used to determine if the diagram should be regenerated or not. The default implementation returns an empty Hash.
345 346 347 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 345 def {} end |
#image_name ⇒ String
Returns the base name for the image file that will be produced.
293 294 295 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 293 def image_name raise NotImplementedError.new end |
#should_process?(image_file, image_metadata) ⇒ Boolean
Determines if the diagram should be regenerated or not. The default implementation of this method simply returns true.
336 337 338 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 336 def should_process?(image_file, ) true end |
#to_s ⇒ Object
Alias for code
326 327 328 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 326 def to_s code end |