Class: Frepl::MultilineStatement

Inherits:
Statement show all
Defined in:
lib/frepl/statement.rb

Direct Known Subclasses

DerivedType, DoLoop, Function, IfStatement, Subroutine, Where

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods inherited from Statement

#accept

Constructor Details

#initialize(lines = []) ⇒ MultilineStatement

Returns a new instance of MultilineStatement.



47
48
49
# File 'lib/frepl/statement.rb', line 47

def initialize(lines = [])
  @lines = lines
end

Instance Attribute Details

#linesObject (readonly)

Returns the value of attribute lines.



45
46
47
# File 'lib/frepl/statement.rb', line 45

def lines
  @lines
end

Instance Method Details

#complete?Boolean

Returns:

  • (Boolean)


59
60
61
# File 'lib/frepl/statement.rb', line 59

def complete?
  @lines.last.match(terminal_regex) != nil && !nested?
end

#incomplete?Boolean

Returns:

  • (Boolean)


55
56
57
# File 'lib/frepl/statement.rb', line 55

def incomplete?
  !complete?
end

#outputObject



51
52
53
# File 'lib/frepl/statement.rb', line 51

def output
  @lines.join("\n") + "\n"
end

#terminal_regexObject

Raises:

  • (NotImplementedError)


63
64
65
# File 'lib/frepl/statement.rb', line 63

def terminal_regex
  raise NotImplementedError
end