Class: SM::Lines

Class | SM::Lines
In: | rdoc/markup/simple_markup/lines.rb
Parent: | Object

A container for all the lines

### Methods

as_text delete each empty? line_types new next normalize rewind unget

### Included Modules

Enumerable

### Attributes

lines | [R] |

### Public Class methods

new(lines)

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 98
        def initialize(lines)
          @lines = lines
          rewind
        end

### Public Instance methods

as_text()

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 143
        def as_text
          @lines.map {|l| l.text}.join("\n")
        end

delete(a_line)

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 133
        def delete(a_line)
          a_line.deleted = true
        end

each() {|line unless line.deleted| ...}

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 107
        def each
          @lines.each do |line|
            yield line unless line.deleted
          end
        end

empty?()

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 103
        def empty?
          @lines.size.zero?
        end

line_types()

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 147
        def line_types
          @lines.map {|l| l.type }
        end

next()

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 121
        def next
          begin
            res = @lines[@nextline]
            @nextline += 1 if @nextline < @lines.size
          end while res and res.deleted and @nextline < @lines.size
          res
        end

normalize()

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 137
        def normalize
          margin = @lines.collect{|l| l.leading_spaces}.min
          margin = 0 if margin == Line::INFINITY
          @lines.each {|line| line.strip_leading(margin) } if margin > 0
        end

rewind()

def [](index)

      @lines[index]

end

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 117
        def rewind
          @nextline = 0
        end

unget()

[Source]

    # File rdoc/markup/simple_markup/lines.rb, line 129
        def unget
          @nextline -= 1
        end

[Validate]