Class: PointBlank::Parsing::ParagraphParser

Inherits:
NullParser
  • Object
show all
Defined in:
lib/mmmd/blankshell.rb

Overview

Paragraph parser

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from NullParser

#initialize, #parsed_content

Constructor Details

This class inherits a constructor from PointBlank::Parsing::NullParser

Class Method Details

.begin?(line) ⇒ Boolean

Returns:

  • (Boolean)


363
364
365
# File 'lib/mmmd/blankshell.rb', line 363

def self.begin?(line)
  line.match?(/\A {0,3}\S/)
end

Instance Method Details

#close(block, **_lazy) ⇒ nil, Class

Close parser

Parameters:

Returns:

  • (nil, Class)


379
380
381
# File 'lib/mmmd/blankshell.rb', line 379

def close(block, **_lazy)
  super(block, lazy: @lazy_triggered)
end

#consume(line, parent = nil, lazy: false) ⇒ Array(String, Boolean)

Consume line markers

Parameters:

  • line (String)

Returns:

  • (Array(String, Boolean))


368
369
370
371
372
373
374
375
376
# File 'lib/mmmd/blankshell.rb', line 368

def consume(line, parent = nil, lazy: false)
  @lazy_triggered = lazy || @lazy_triggered
  return [nil, nil] if line.match?(/\A {0,3}\Z/)
  return [nil, nil] if @closed
  return [nil, nil] if check_candidates(line, parent)

  push(line)
  ["", nil]
end