higherkindness.skeuomorph.mu.comparison
Perform lists of recursive comparisons indexed by paths, then select the first positive result for each entry (or a mismatch if none) then combine results of all entries and enrich it.
Perform a single recursive comparison and enrich its result
Perform two recursive comparisons and combine their results
Perform a list of recursive comparisons, combine and then enrich their results
The schemas being compared at a given path of the current comparison
Early result: there is nothing left to compare
Perform a list of recursive comparisons but return the first positive result (or a mismatch if none), enriched
Function for result enrichment
Performs the comparison of two schemas
Performs the comparison of two schemas
Compares two schemas to verify that messages written using the writer schema are compatible with the reader schema.
Both schemas' roots are shallowly compared to unfold a Comparison[T, ?]
, to compare their children or to signal a result.
Comparison branches are then folded back by combining their results.
WARNING: The current implementation does a lot of "useless" comparisons when it comes to compare coproducts. This is due to the structure of hylo: when we want to align something with a coproduct, we test all the possible combinations algthough we're only interested in finding the first successful one.
the concrete schema type, must be a qq.droste.Basis over higherkindness.skeuomorph.mu.MuF