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