In Files

  • rdoc/markup/simple_markup/lines.rb

Files

Class/Module Index [+]

Quicksearch

SM::Line

Attributes

deleted[RW]

true if this line has been deleted from the list of lines

flag[RW]

A flag. For list lines, this is the type of the list

leading_spaces[RW]

the number of leading spaces

level[RW]

The indentation nesting level

param[RW]

A prefix or parameter. For LIST lines, this is the text that introduced the list item (the label)

text[RW]

The contents

type[RW]

line type

Public Class Methods

new(text) click to toggle source
 
               # File rdoc/markup/simple_markup/lines.rb, line 42
def initialize(text)
  @text    = text.dup
  @deleted = false

  # expand tabs
  1 while @text.gsub!(/\t+/) { ' ' * (8*$&.length - $`.length % 8)}  && $~ #`

  # Strip trailing whitespace
  @text.sub!(/\s+$/, '')

  # and look for leading whitespace
  if @text.length > 0
    @text =~ /^(\s*)/
    @leading_spaces = $1.length
  else
    @leading_spaces = INFINITY
  end
end
            

Public Instance Methods

isBlank?() click to toggle source

Return true if this line is blank

 
               # File rdoc/markup/simple_markup/lines.rb, line 62
def isBlank?
  @text.length.zero?
end
            
stamp(type, level, param="", flag=nil) click to toggle source

stamp a line with a type, a level, a prefix, and a flag

 
               # File rdoc/markup/simple_markup/lines.rb, line 67
def stamp(type, level, param="", flag=nil)
  @type, @level, @param, @flag = type, level, param, flag
end
            
strip_leading(size) click to toggle source

Strip off the leading margin

 
               # File rdoc/markup/simple_markup/lines.rb, line 75
def strip_leading(size)
  if @text.size > size
    @text[0,size] = ""
  else
    @text = ""
  end
end
            
to_s() click to toggle source
 
               # File rdoc/markup/simple_markup/lines.rb, line 83
def to_s
  "#@type#@level: #@text"
end