Crate prism3_function

Crate prism3_function 

Source
Expand description

§Prism3 Function

Provides functional programming abstractions for Rust, including:

  • Transformer types: Transform values from type T to type R
  • UnaryOperator types: Transform values of type T to the same type T
  • BiTransformer types: Transform two values to produce a result
  • BinaryOperator types: Transform two values of type T to produce a T
  • Consumer types: Functions that consume values without returning
  • BiConsumer types: Functions that consume two values without returning
  • Predicate types: Functions that test values and return boolean
  • BiPredicate types: Functions that test two values and return boolean
  • Supplier types: Functions that produce values without input
  • Mapper types: Stateful transformations from type T to type R
  • Tester types: Functions that test conditions without input
  • Comparator types: Functions that compare values and return ordering

§Author

Haixing Hu

Re-exports§

pub use bi_consumer::ArcBiConsumer;
pub use bi_consumer::BiConsumer;
pub use bi_consumer::BoxBiConsumer;
pub use bi_consumer::FnBiConsumerOps;
pub use bi_consumer::RcBiConsumer;
pub use bi_consumer_once::BiConsumerOnce;
pub use bi_consumer_once::BoxBiConsumerOnce;
pub use bi_consumer_once::FnBiConsumerOnceOps;
pub use bi_predicate::ArcBiPredicate;
pub use bi_predicate::BiPredicate;
pub use bi_predicate::BoxBiPredicate;
pub use bi_predicate::FnBiPredicateOps;
pub use bi_predicate::RcBiPredicate;
pub use bi_transformer::ArcBiTransformer;
pub use bi_transformer::ArcBinaryOperator;
pub use bi_transformer::BiTransformer;
pub use bi_transformer::BinaryOperator;
pub use bi_transformer::BoxBiTransformer;
pub use bi_transformer::BoxBinaryOperator;
pub use bi_transformer::FnBiTransformerOps;
pub use bi_transformer::RcBiTransformer;
pub use bi_transformer::RcBinaryOperator;
pub use bi_transformer_once::BiTransformerOnce;
pub use bi_transformer_once::BinaryOperatorOnce;
pub use bi_transformer_once::BoxBiTransformerOnce;
pub use bi_transformer_once::BoxBinaryOperatorOnce;
pub use bi_transformer_once::FnBiTransformerOnceOps;
pub use comparator::ArcComparator;
pub use comparator::BoxComparator;
pub use comparator::Comparator;
pub use comparator::FnComparatorOps;
pub use comparator::RcComparator;
pub use consumer::ArcConsumer;
pub use consumer::BoxConsumer;
pub use consumer::Consumer;
pub use consumer::FnConsumerOps;
pub use consumer::RcConsumer;
pub use consumer_once::BoxConsumerOnce;
pub use consumer_once::ConsumerOnce;
pub use consumer_once::FnConsumerOnceOps;
pub use mapper::ArcConditionalMapper;
pub use mapper::ArcMapper;
pub use mapper::BoxConditionalMapper;
pub use mapper::BoxMapper;
pub use mapper::FnMapperOps;
pub use mapper::Mapper;
pub use mapper::RcConditionalMapper;
pub use mapper::RcMapper;
pub use mapper_once::BoxConditionalMapperOnce;
pub use mapper_once::BoxMapperOnce;
pub use mapper_once::FnMapperOnceOps;
pub use mapper_once::MapperOnce;
pub use mutator::ArcConditionalMutator;
pub use mutator::ArcMutator;
pub use mutator::BoxConditionalMutator;
pub use mutator::BoxMutator;
pub use mutator::FnMutatorOps;
pub use mutator::Mutator;
pub use mutator::RcConditionalMutator;
pub use mutator::RcMutator;
pub use mutator_once::BoxConditionalMutatorOnce;
pub use mutator_once::BoxMutatorOnce;
pub use mutator_once::FnMutatorOnceOps;
pub use mutator_once::MutatorOnce;
pub use predicate::ArcPredicate;
pub use predicate::BoxPredicate;
pub use predicate::FnPredicateOps;
pub use predicate::Predicate;
pub use predicate::RcPredicate;
pub use readonly_bi_consumer::ArcReadonlyBiConsumer;
pub use readonly_bi_consumer::BoxReadonlyBiConsumer;
pub use readonly_bi_consumer::FnReadonlyBiConsumerOps;
pub use readonly_bi_consumer::RcReadonlyBiConsumer;
pub use readonly_bi_consumer::ReadonlyBiConsumer;
pub use readonly_consumer::ArcReadonlyConsumer;
pub use readonly_consumer::BoxReadonlyConsumer;
pub use readonly_consumer::FnReadonlyConsumerOps;
pub use readonly_consumer::RcReadonlyConsumer;
pub use readonly_consumer::ReadonlyConsumer;
pub use readonly_supplier::ArcReadonlySupplier;
pub use readonly_supplier::BoxReadonlySupplier;
pub use readonly_supplier::RcReadonlySupplier;
pub use readonly_supplier::ReadonlySupplier;
pub use supplier::ArcSupplier;
pub use supplier::BoxSupplier;
pub use supplier::FnSupplierOps;
pub use supplier::RcSupplier;
pub use supplier::Supplier;
pub use supplier_once::BoxSupplierOnce;
pub use supplier_once::SupplierOnce;
pub use tester::ArcTester;
pub use tester::BoxTester;
pub use tester::FnTesterOps;
pub use tester::RcTester;
pub use tester::Tester;
pub use transformer::ArcConditionalTransformer;
pub use transformer::ArcTransformer;
pub use transformer::ArcUnaryOperator;
pub use transformer::BoxConditionalTransformer;
pub use transformer::BoxTransformer;
pub use transformer::BoxUnaryOperator;
pub use transformer::FnTransformerOps;
pub use transformer::RcConditionalTransformer;
pub use transformer::RcTransformer;
pub use transformer::RcUnaryOperator;
pub use transformer::Transformer;
pub use transformer::UnaryOperator;
pub use transformer_once::BoxConditionalTransformerOnce;
pub use transformer_once::BoxTransformerOnce;
pub use transformer_once::BoxUnaryOperatorOnce;
pub use transformer_once::FnTransformerOnceOps;
pub use transformer_once::TransformerOnce;
pub use transformer_once::UnaryOperatorOnce;

Modules§

bi_consumer
BiConsumer Types
bi_consumer_once
BiConsumerOnce Types
bi_predicate
BiPredicate Abstraction
bi_transformer
BiTransformer Types
bi_transformer_once
BiTransformerOnce Types
comparator
Comparator Abstraction
consumer
Consumer Types
consumer_once
ConsumerOnce Types
mapper
Mapper Types
mapper_once
MapperOnce Types
mutator
Mutator Types
mutator_once
MutatorOnce Types
predicate
Predicate Abstraction
readonly_bi_consumer
ReadonlyBiConsumer Types
readonly_consumer
ReadonlyConsumer Types
readonly_supplier
Read-only Supplier Types
supplier
Supplier Types
supplier_once
SupplierOnce Types
tester
Tester Type
transformer
Transformer Types
transformer_once
TransformerOnce Types