Class: ActiveFacts::CQL::Compiler::SubsetConstraint
- Inherits:
-
SetConstraint
- Object
- Definition
- Constraint
- SetConstraint
- ActiveFacts::CQL::Compiler::SubsetConstraint
- Defined in:
- lib/activefacts/cql/compiler/constraint.rb
Instance Attribute Summary
Attributes inherited from Definition
#constellation, #tree, #vocabulary
Instance Method Summary collapse
- #compile ⇒ Object
-
#initialize(context_note, enforcement, clauses_lists) ⇒ SubsetConstraint
constructor
A new instance of SubsetConstraint.
- #loose_binding ⇒ Object
Methods inherited from SetConstraint
#role_sequences_for_common_bindings, #warn_ignored_queries
Methods inherited from Constraint
#bind_clauses, #common_bindings, #loose_bind, #loose_bind_wherever_possible, #to_s, #warn_ignored_queries
Methods inherited from Definition
#all_bindings_in_clauses, #build_all_steps, #build_steps, #build_variables, #source, #to_s
Constructor Details
#initialize(context_note, enforcement, clauses_lists) ⇒ SubsetConstraint
Returns a new instance of SubsetConstraint.
326 327 328 329 330 |
# File 'lib/activefacts/cql/compiler/constraint.rb', line 326 def initialize context_note, enforcement, clauses_lists super context_note, enforcement, clauses_lists @subset_clauses = @clauses_lists[0] @superset_clauses = @clauses_lists[1] end |
Instance Method Details
#compile ⇒ Object
332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 |
# File 'lib/activefacts/cql/compiler/constraint.rb', line 332 def compile bind_clauses common_bindings role_sequences = role_sequences_for_common_bindings @constraint = @constellation.SubsetConstraint( :new, :vocabulary => @vocabulary, :subset_role_sequence => role_sequences[0], :superset_role_sequence => role_sequences[1] ) @enforcement.compile(@constellation, @constraint) if @enforcement super end |
#loose_binding ⇒ Object
350 351 352 |
# File 'lib/activefacts/cql/compiler/constraint.rb', line 350 def loose_binding loose_bind_wherever_possible end |