class PseudoHiki::BlockParser::BlockNode

Attributes

node_id[RW]

Public Instance Methods

add_leaf(line, blockparser) click to toggle source
# File lib/pseudohiki/blockparser.rb, line 146
def add_leaf(line, blockparser)
  leaf = create_leaf(line, blockparser)
  blockparser.stack.pop while blockparser.breakable?(leaf)
  blockparser.stack.push leaf
end
breakable?(breaker) click to toggle source
# File lib/pseudohiki/blockparser.rb, line 140
def breakable?(breaker)
  not (kind_of? breaker.block and level == breaker.level)
end
create_leaf(line, blockparser) click to toggle source
# File lib/pseudohiki/blockparser.rb, line 152
def create_leaf(line, blockparser)
  return BlockElement::VerbatimLeaf.create("".freeze, true) if VERBATIM_BEGIN.match? line
  line = blockparser.auto_linker.link(line)
  blockparser.select_leaf_type(line).create(line)
end
level() click to toggle source
# File lib/pseudohiki/blockparser.rb, line 131
def level
  first.level if first # @cached_level ||= (first.level if first)
end
parse_leafs() click to toggle source
# File lib/pseudohiki/blockparser.rb, line 144
def parse_leafs; end
push_self(stack) click to toggle source
Calls superclass method
# File lib/pseudohiki/blockparser.rb, line 135
def push_self(stack)
  @stack = stack
  super(stack)
end