class Line

Public Class Methods

new(line="") click to toggle source
Calls superclass method
# File lib/line.rb, line 2
def initialize(line="")
  super
end

Public Instance Methods

already_junklet?() click to toggle source
# File lib/line.rb, line 18
def already_junklet?
  match(/^\s*junklet\b/)
end
code?() click to toggle source
# File lib/line.rb, line 26
def code?
  empty? || (!let? && !junklet?)
end
convert() click to toggle source
# File lib/line.rb, line 39
def convert
  return nil unless junklet?
  return self if already_junklet?
  Line.new("#{indent}junklet #{names.first}")
end
indent() click to toggle source
# File lib/line.rb, line 6
def indent
  ' ' * (size - lstrip.size)
end
junklet?() click to toggle source
# File lib/line.rb, line 14
def junklet?
   already_junklet? || secure_random?
end
let?() click to toggle source
# File lib/line.rb, line 10
def let?
  match(/^\s*let\s*\(/) && !junklet?
end
names() click to toggle source
# File lib/line.rb, line 30
def names
  return nil unless let? || junklet?
  match(/^\s*(let|junklet)\s*\(?([^)]*)\)?/) \
    .captures[1..-1] \
    .join('') \
    .split(/,/) \
    .map(&:strip)
end
secure_random?() click to toggle source
# File lib/line.rb, line 22
def secure_random?
  match(/^\s*(let)\s*\(?([^)]*)\)\s*{\s*SecureRandom.(uuid|hex)\s*}/)
end