Class: ActiveFacts::Metamodel::Step
- Inherits:
-
Object
- Object
- ActiveFacts::Metamodel::Step
- Defined in:
- lib/activefacts/metamodel/metamodel.rb,
lib/activefacts/metamodel/extensions.rb
Instance Method Summary collapse
- #describe ⇒ Object
- #input_play ⇒ Object
- #is_objectification_step ⇒ Object
- #is_unary_step ⇒ Object
- #output_plays ⇒ Object
Instance Method Details
#describe ⇒ Object
1267 1268 1269 1270 1271 1272 1273 1274 1275 |
# File 'lib/activefacts/metamodel/extensions.rb', line 1267 def describe "Step " + "#{is_optional ? 'maybe ' : ''}" + (is_unary_step ? '(unary) ' : "from #{input_play.describe} ") + "#{is_disallowed ? 'not ' : ''}" + "to #{output_plays.map(&:describe)*', '}" + (objectification_variable ? ", objectified as #{objectification_variable.describe}" : '') + " '#{fact_type.default_reading}'" end |
#input_play ⇒ Object
1277 1278 1279 |
# File 'lib/activefacts/metamodel/extensions.rb', line 1277 def input_play all_play.detect{|p| p.is_input} end |
#is_objectification_step ⇒ Object
1290 1291 1292 |
# File 'lib/activefacts/metamodel/extensions.rb', line 1290 def is_objectification_step !!objectification_variable end |
#is_unary_step ⇒ Object
1285 1286 1287 1288 |
# File 'lib/activefacts/metamodel/extensions.rb', line 1285 def is_unary_step # Preserve this in case we have to use a real variable for the phantom all_play.size == 1 end |
#output_plays ⇒ Object
1281 1282 1283 |
# File 'lib/activefacts/metamodel/extensions.rb', line 1281 def output_plays all_play.reject{|p| p.is_input} end |