Class: OCL::IteratorRange

Inherits:
Object
  • Object
show all
Defined in:
lib/dbc/ocl.rb

Overview

Range

Instance Method Summary collapse

Constructor Details

#initialize(declaration, boundry) ⇒ IteratorRange

Returns a new instance of IteratorRange.


70
71
72
73
# File 'lib/dbc/ocl.rb', line 70

def initialize(declaration, boundry)
	@declaration = declaration
	@boundry = boundry
end

Instance Method Details

#close(indent_str) ⇒ Object


90
91
92
# File 'lib/dbc/ocl.rb', line 90

def close(indent_str)
	"#{indent_str}}\n"
end

#declare(indent_str) ⇒ Object


74
75
76
77
78
# File 'lib/dbc/ocl.rb', line 74

def declare(indent_str)
	str = indent_str.dup
	# initialization of variable
	str << @declaration.to_s << ";\n"
end

#open(indent_str) ⇒ Object


79
80
81
82
83
84
85
86
87
88
89
# File 'lib/dbc/ocl.rb', line 79

def open(indent_str)
	identifier = @declaration.identifier
	str = ''
	str << indent_str << "for (#{identifier} = #{@boundry.first}; "
	if @boundry.exclude_end?
		str << "#{identifier} < #{@boundry.last}; "
	else
		str << "#{identifier} <= #{@boundry.last}; "
	end
	str << "#{identifier}++) {\n"
end