class Neo4j::AsciidoctorExtensions::AttributeUpdateTreeProcessor

A tree processor that update an attribute depending on a given rule.

Public Instance Methods

process(document) click to toggle source
# File lib/neo4j/asciidoctor/extensions/attribute_update/extension.rb, line 15
def process(document)
  if (attribute_name = @config[:attr_name]) &&
     (current_value = document.attr attribute_name) &&
     (update_rule = @config[:update_rule])
    new_value = update_rule.call(document, current_value)
    document.set_attr attribute_name, new_value if new_value != current_value
  end
  document
end