class LiquidDiagrams::BasicBlock
@abstract Subclass and override {#render_content} to implement
Public Class Methods
renderer()
click to toggle source
Return the renderer class matching the block
# File lib/liquid_diagrams/basic_block.rb, line 7 def self.renderer @renderer ||= Renderers.const_get( name.split('::').last.gsub(/Block$/, 'Renderer') ) end
Public Instance Methods
handle_error(error)
click to toggle source
# File lib/liquid_diagrams/basic_block.rb, line 28 def handle_error(error) error end
read_config()
click to toggle source
@api private
# File lib/liquid_diagrams/basic_block.rb, line 33 def read_config options = LiquidDiagrams.configuration(parse_context, key: block_name) inline_options = Utils.parse_inline_options(@markup.strip) options.merge(inline_options) end
render(context)
click to toggle source
@note Do not override this method, override {#render_content} instead
Calls superclass method
# File lib/liquid_diagrams/basic_block.rb, line 14 def render(context) @context = context @content = super.to_s @config = read_config render_content end
render_content()
click to toggle source
# File lib/liquid_diagrams/basic_block.rb, line 22 def render_content self.class.renderer.render(@content, @config) rescue Errors::BasicError => error handle_error(error) end