Class: JSI::Schema::Cxt::ChildApplication
- Inherits:
-
Block
- Object
- JSI::Schema::Cxt
- Block
- JSI::Schema::Cxt::ChildApplication
- Defined in:
- lib/jsi/schema/cxt/child_application.rb
Instance Attribute Summary collapse
-
#collect_evaluated ⇒ Boolean
Does application need to collect successful child evaluation?.
-
#evaluated ⇒ Boolean
Was the child successfully evaluated by a child applicator?.
Attributes inherited from Block
Attributes inherited from JSI::Schema::Cxt
Instance Method Summary collapse
- #child_schema_applicate(child_applicator_schema) ⇒ Object
- #child_subschema_applicate(subschema_ptr) ⇒ Object
Methods inherited from Block
Methods inherited from JSI::Schema::Cxt
#internal_integer?, #keyword?, #keyword_value_ary?, #keyword_value_bool?, #keyword_value_hash?, #keyword_value_numeric?, #keyword_value_str?, #schema_content, #subschema
Instance Attribute Details
#collect_evaluated ⇒ Boolean
Does application need to collect successful child evaluation?
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/jsi/schema/cxt/child_application.rb', line 19 class ChildApplication < Block # @param subschema_ptr [Ptr, #to_ary] def child_subschema_applicate(subschema_ptr) child_schema_applicate(schema.subschema(subschema_ptr)) end # @param child_applicator_schema [Schema] def child_schema_applicate(child_applicator_schema) if collect_evaluated self.evaluated ||= !collect_evaluated_validate || child_applicator_schema.instance_valid?(instance[token]) end cxt_yield(child_applicator_schema) end end |
#evaluated ⇒ Boolean
Was the child successfully evaluated by a child applicator?
19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/jsi/schema/cxt/child_application.rb', line 19 class ChildApplication < Block # @param subschema_ptr [Ptr, #to_ary] def child_subschema_applicate(subschema_ptr) child_schema_applicate(schema.subschema(subschema_ptr)) end # @param child_applicator_schema [Schema] def child_schema_applicate(child_applicator_schema) if collect_evaluated self.evaluated ||= !collect_evaluated_validate || child_applicator_schema.instance_valid?(instance[token]) end cxt_yield(child_applicator_schema) end end |
Instance Method Details
#child_schema_applicate(child_applicator_schema) ⇒ Object
26 27 28 29 30 31 32 |
# File 'lib/jsi/schema/cxt/child_application.rb', line 26 def child_schema_applicate(child_applicator_schema) if collect_evaluated self.evaluated ||= !collect_evaluated_validate || child_applicator_schema.instance_valid?(instance[token]) end cxt_yield(child_applicator_schema) end |
#child_subschema_applicate(subschema_ptr) ⇒ Object
21 22 23 |
# File 'lib/jsi/schema/cxt/child_application.rb', line 21 def child_subschema_applicate(subschema_ptr) child_schema_applicate(schema.subschema(subschema_ptr)) end |