Add builder pattern for paragraph, lists, tables
This commit is contained in:
@@ -2,7 +2,9 @@
|
||||
|
||||
module Ezdoc
|
||||
class Document
|
||||
attr_reader :content
|
||||
include Builder
|
||||
|
||||
attr_reader :nodes
|
||||
|
||||
def self.create(path, &block)
|
||||
doc = new
|
||||
@@ -12,15 +14,21 @@ module Ezdoc
|
||||
end
|
||||
|
||||
def initialize
|
||||
@content = []
|
||||
end
|
||||
|
||||
def text(value)
|
||||
@content << { text: value }
|
||||
@nodes = []
|
||||
@format_stack = []
|
||||
@current_target = nil
|
||||
@current_list = nil
|
||||
@current_table = nil
|
||||
@current_row = nil
|
||||
@num_id_counter = 0
|
||||
end
|
||||
|
||||
def save(path)
|
||||
Package.new(self).save(path)
|
||||
end
|
||||
|
||||
def lists
|
||||
@nodes.select { |n| n.is_a?(Nodes::List) }
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
Reference in New Issue
Block a user