Class: Dbsketch::Model::Operation

Inherits:
Database_Object show all
Defined in:
lib/dbsketch/model/operation.rb

Direct Known Subclasses

Function, Procedure

Instance Attribute Summary collapse

Attributes inherited from Database_Object

#comment, #dependencies, #meaning, #name, #order

Instance Method Summary collapse

Methods inherited from Database_Object

#add_dependencies, #class_name, #compute_order!, #inspect, #reset_order!

Constructor Details

#initialize(name, meaning: nil, comment: nil, dependencies: [], arguments: [], algo:) ⇒ Operation

Returns a new instance of Operation.

Raises:

  • (ArgumentError)


11
12
13
14
15
16
17
18
19
20
21
22
# File 'lib/dbsketch/model/operation.rb', line 11

def initialize name, meaning: nil, comment: nil, dependencies: [], arguments: [], algo:
	super name, :meaning => meaning, :comment => comment, :dependencies => dependencies
	arguments = arguments.is_a?(Array) ? arguments : [arguments]
	### Preconditions
	arguments.each_with_index do |arg, index|
		raise ArgumentError, "arguments[#{index}] is not a String" unless arg.is_a? String
	end
	raise ArgumentError, "algo is not a String" unless algo.is_a? String
	###
	@arguments = arguments
	@algo = algo
end

Instance Attribute Details

#algoObject (readonly)

Returns the value of attribute algo.



24
25
26
# File 'lib/dbsketch/model/operation.rb', line 24

def algo
  @algo
end

#argumentsObject (readonly)

Returns the value of attribute arguments.



24
25
26
# File 'lib/dbsketch/model/operation.rb', line 24

def arguments
  @arguments
end