class Sablon::Content::String

Handles simple text replacement of fields in the template

Public Class Methods

id() click to toggle source
# File lib/sablon/content.rb, line 48
def self.id; :string end
new(value) click to toggle source
Calls superclass method
# File lib/sablon/content.rb, line 53
def initialize(value)
  super value.to_s
end
wraps?(value) click to toggle source
# File lib/sablon/content.rb, line 49
def self.wraps?(value)
  value.respond_to?(:to_s)
end

Public Instance Methods

append_to(paragraph, display_node, env) click to toggle source
# File lib/sablon/content.rb, line 57
def append_to(paragraph, display_node, env)
  string.scan(/[^\n]+|\n/).reverse.each do |part|
    if part == "\n"
      display_node.add_next_sibling Nokogiri::XML::Node.new "w:br", display_node.document
    else
      text_part = display_node.dup
      text_part.content = part
      display_node.add_next_sibling text_part
    end
  end
end