-
Notifications
You must be signed in to change notification settings - Fork 25
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Implement Logic in Symbol layer #44
Comments
Implementation of symbols was in 54e12b3 |
Deep investigation into Querying was done in #45 |
amis92
added a commit
that referenced
this issue
Mar 1, 2023
part of: Implement Logic in Symbol layer #44
3 tasks
amis92
added a commit
that referenced
this issue
Mar 9, 2023
* feat: Bind Scope and Filter symbols of a Query part of: Implement Logic in Symbol layer #44 * feat: make characteristics Resources of a Profile * feat: bind Effect.TargetMember * refactor: move around code in Playground Main * fix: bind members in category links * fix: deduplicate characteristics in Profile.Members (fixup) * fix: additional fixes and optimizations for TargetMember binding * refactor: group Playground diagnostics by message * fix: shorten lookup on success when descending * feat: fully bind TargetMember (including link target members) * feat: optimize CategoryEntry binding * feat: optimize type checks (maybe) * feat: optimize lookup in descendants
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
ILogicSymbol
is a parent type of the following:IConditionSymbol
(BS Condition/ConditionGroup)IConstraintSymbol
(BS Constraint)IEffectSymbol
(BS Modifier/ModifierGroup/Repeat)IQuerySymbol
(BS Modifier/Constraint/Condition's Query+FilterBy+Condition common abstraction)IQuerySymbol
andIEffectSymbol
bindings of the field/scope/filter(child) IDs.I've settled on a tiny simplification - modifier(group) and repeat are an Effect, condition(group) is Condition, and Query is a common part of querying in constraint, condition and repeat:
IEffectSymbol
is either a modifier, modifier group or a repeat BS element unified into a single interface. May contain a Condition, and a RepetitionQuery. Entries contains Effects (modifiers/modifier groups) and an Effect can contain other Effects (repeats), as well as ChildEffects (in modifier group).IConditionSymbol
is either a condition or condition group BS element. Contains Query. Effects can contain up to a single Condition, and Conditions can have Child conditions that are evaluated using and/or operator.IConstraintSymbol
is a constraint BS element. Contains Query, but signifies a boundary/limit. Entries contain Constraints.IQuerySymbol
- is an abstraction over querying in conditions, constraints and repeats. It defines a Value (field) that is counted, a Scope in which elements are counted, and a Filter which takes only specific elements to count. Then the results are processed - if query defines a ComparisonOperator, the query result is compared with ReferenceValue - otherwise the numeric sum of values is returned.The text was updated successfully, but these errors were encountered: