class Code

Attributes

code[RW]
indent[RW]

Public Class Methods

new(indent=0) click to toggle source
# File lib/code.rb, line 5
def initialize indent=0
  @code=[]
  @indent=indent
end

Public Instance Methods

<<(str) click to toggle source
# File lib/code.rb, line 10
def <<(str)
  if str.is_a? Code
    str.code.each do |line|
      @code << " "*@indent+line
    end
  elsif str.is_a? Array
    str.each do |kode|
      @code << kode
    end
  elsif str.nil?
  else
    @code << " "*@indent+str
  end
end
finalize(dot=false) click to toggle source
# File lib/code.rb, line 25
def finalize dot=false
  if dot
    return @code.join('\n')
  end
  @code.join("\n") if @code.any?
end
newline() click to toggle source
# File lib/code.rb, line 32
def newline
  @code << " "
end
save_as(filename,verbose=true,sep="\n") click to toggle source
# File lib/code.rb, line 36
def save_as filename,verbose=true,sep="\n"
  str=self.finalize
  File.open(filename,'w'){|f| f.puts(str)}
  puts "saved code in file #{filename}" if verbose
  return filename
end
size() click to toggle source
# File lib/code.rb, line 43
def size
  @code.size
end