class CopyStatement
Encapsulate the details of a COBOL COPY statement.
Public Class Methods
new(line)
click to toggle source
Parse out the key elements of a COPY statement.
# File lib/copy_statement.rb, line 9 def initialize line tokens = line.gsub(/\s+/, ' ').split last = tokens.length-1 @has_period = tokens[last].match(/\.$/) == nil ? false : true tokens[last] = tokens[last].gsub(/\./, '') @copybook_name = tokens[1] @has_replacing = tokens.length > 2 && tokens[2].downcase == 'replacing' ? true : false @old_value = strip_equals_signs(tokens[3]) if has_replacing? @new_value = strip_equals_signs(tokens[5]) if has_replacing? end
Public Instance Methods
copybook_name()
click to toggle source
# File lib/copy_statement.rb, line 20 def copybook_name @copybook_name end
has_period?()
click to toggle source
# File lib/copy_statement.rb, line 24 def has_period? @has_period end
has_replacing?()
click to toggle source
# File lib/copy_statement.rb, line 28 def has_replacing? @has_replacing end
new_value()
click to toggle source
# File lib/copy_statement.rb, line 36 def new_value @new_value end
old_value()
click to toggle source
# File lib/copy_statement.rb, line 32 def old_value @old_value end
Private Instance Methods
strip_equals_signs(value)
click to toggle source
# File lib/copy_statement.rb, line 42 def strip_equals_signs value value.gsub(/\=\=/, '') end