Uses of Interface
org.deduced.DeducedProperty

Packages that use DeducedProperty
org.deduced.dynamic The Dynamic package contains an implementation of the property collection that can be dynamically modified as the schema changes. 
 

Uses of DeducedProperty in org.deduced.dynamic
 

Classes in org.deduced.dynamic that implement DeducedProperty
 class AbstractDeducedProperty<E>
          AbstractDeducedProperty stores the common code of deduced properties to keep the use counter
 class FixedDeducedProperty<E>
          FixedDeducedProperty is used to hold a property that is created with a rule that has no input.
 class RuleDeducedProperty<E>
          RuleDeducedProperty is a property implementation that holds a property where the value is controlled by a deduction rule.
 

Fields in org.deduced.dynamic with type parameters of type DeducedProperty
private  java.util.Map<PropertyCollection<?,?>,DeducedProperty<java.lang.Object>> DynamicPropertyMap.rulePropertyMap
          map of all the rules implemented by the type and their properties
 

Methods in org.deduced.dynamic that return DeducedProperty
private  DeducedProperty<java.lang.Object> DynamicPropertyMap.createDeducedProperty(PropertyCollection deductionRule, DeductionRuleAnalyzer<java.lang.Object> analyzer, PropertyCollection<?,?> lastInstance)
          create Deduced Property
private static DeducedProperty<java.lang.Object> DynamicPropertyMap.findMatchingRuleInMap(java.util.List<PropertyCollection<?,?>> reverseInstanceList, PropertyCollection<?,?> ruleToAvoid, DynamicPropertyMap map)
          find a rule in a property map that matches the reverse instance list, overrides other rules and doesn't match one of the rules to avoid.
private static DeducedProperty<java.lang.Object> DynamicPropertyMap.findOverride(PropertyCollection<?,?> searchPoint, PropertyCollection<?,?> instance, java.util.List<PropertyCollection<?,?>> reverseInstanceList, PropertyCollection<?,?> ruleToAvoid)
          find a property Override based on the parent list
 DeducedProperty<java.lang.Object> DynamicPropertyMap.getRuleProperty(PropertyCollection deductionRule)
          get Rule Property
 

Methods in org.deduced.dynamic with parameters of type DeducedProperty
private  void DynamicPropertyMap.applyRuleMissingOverride(PropertyCollection<?,?> rule, DeducedProperty<java.lang.Object> propertyOverride)
          apply Rule Missing Override
static int DynamicPropertyMap.getOutputDepth(DeducedProperty<?> property)
          get Output Depth of a rule associated with a deduced property
static java.lang.String DynamicPropertyMap.getRuleName(DeducedProperty<?> deducedProperty)
          get Rule Name
private static boolean DynamicPropertyMap.isFirstPropertyOverridingSecondProperty(DynamicPropertyMap collectionToOverride, DeducedProperty<java.lang.Object> firstProperty, DeducedProperty<?> secondProperty)
          test if a deduced property overrides another one by first testing the output depth.
private static boolean DynamicPropertyMap.isFirstPropertyOverridingSecondProperty(DynamicPropertyMap collectionToOverride, DeducedProperty<java.lang.Object> firstProperty, DeducedProperty<?> secondProperty)
          test if a deduced property overrides another one by first testing the output depth.
private static void DynamicPropertyMap.overridePropertyWithRule(DynamicPropertyMap collectionToOverride, java.lang.Object key, DeducedProperty<java.lang.Object> property)
          override Property With Rule
private  void DynamicPropertyMap.putRuleInRulePropertyMap(DeducedProperty<java.lang.Object> createdProperty)
          put Rule In Rule Property Map
private static void DynamicPropertyMap.rebuildPropertyOverride(DynamicPropertyMap childCollection, DeducedProperty<?> property, PropertyCollection<?,?> ruleToAvoid)
          rebuild Property Override
private  void DynamicPropertyMap.removeRuleOverrides(PropertyCollection<?,?> rule, DeducedProperty<java.lang.Object> propertyOverride)
          remove Rule Overrides
private static boolean DynamicPropertyMap.setParentOnNewValue(DynamicPropertyMap collectionToOverride, java.lang.Object key, DeducedProperty<java.lang.Object> property, java.lang.Object newValue)
          set Parent On New Value