Crate essential_check
source ·Expand description
Core logic for validating Predicates,
Solutions and
SolutionData against associated predicates.
Typical usage is to first validate predicates and solutions independently in
full prior to validating against one another with solution::check_predicates.
§Predicate Validation
predicate::check_signed_contractvalidates a signed contract.predicate::check_contractvalidates a contract.predicate::checkvalidate an individual predicate.- [
predicate::check_slots] validate a predicate’s slots. predicate::check_directivevalidate a predicate’s directive.predicate::check_state_readsvalidate a predicate’s state read bytecode.predicate::check_constraintsvalidate a predicate’s constraint bytecode.
§Solution Validation
solution::checkvalidates an unsigned solution.solution::check_datavalidates a solution’s data slice.solution::check_state_mutationsvalidates a solution’s state mutation slice.
§Solution + Predicate Validation
solution::check_predicatesvalidates a solution’s data against their associated predicates.solution::check_predicatevalidates a single solution data against an associated predicate.solution::check_predicate_constraintsthe predicate constraint checking part of solution data validation.- [
solution::check_decision_variable_lengths] checks the expected number of decision variables.
Modules§
- The essential constraint checking implementation.
- Items related to the validation of
Predicates. - A minimal crate providing Essential’s generic signing, verification and public key recovery functions implemented using
secp256k1and theessential_hashcrate. - Items related to validating
Solutions. - The essential state read VM implementation.
- Common types for Essential Chain.