SYMBOL INDEX (175 symbols across 52 files) FILE: fp-core/src/applicative.rs type Applicative (line 4) | pub trait Applicative: Apply + Pure {} FILE: fp-core/src/apply.rs type Applicator (line 4) | type Applicator = >::Current) -> ... type Apply (line 6) | pub trait Apply: Functor + HKT>::Curren... method ap (line 7) | fn ap(self, f: Applicator) -> >::Target; function ap (line 11) | fn ap(self, f: Applicator) -> >::Target { function ap (line 17) | fn ap(self, f: Applicator) -> >::Target { FILE: fp-core/src/chain.rs type Chain (line 3) | pub trait Chain: HKT { method chain (line 4) | fn chain(self, f: F) -> >::Target function chain (line 10) | fn chain(self, f: F) -> Self::Target function chain (line 19) | fn chain(self, f: F) -> Self::Target FILE: fp-core/src/comonad.rs type Comonad (line 4) | pub trait Comonad: Extend + Extract {} FILE: fp-core/src/compose.rs function compose_two (line 9) | pub fn compose_two(f: F, g: G) -> impl Fn(A) -> C FILE: fp-core/src/empty.rs type Empty (line 1) | pub trait Empty { method empty (line 2) | fn empty() -> Self; method empty (line 30) | fn empty() -> Vec { method empty (line 36) | fn empty() -> String { FILE: fp-core/src/extend.rs type Extend (line 4) | pub trait Extend: Functor + Sized { method extend (line 5) | fn extend(self, f: W) -> >::Target function extend (line 11) | fn extend(self, f: W) -> Self::Target function extend (line 20) | fn extend(self, f: W) -> Self::Target FILE: fp-core/src/extract.rs type Extract (line 1) | pub trait Extract { method extract (line 2) | fn extract(self) -> A; function extract (line 6) | fn extract(self) -> A { function extract (line 15) | fn extract(self) -> A { FILE: fp-core/src/foldable.rs type Foldable (line 8) | pub trait Foldable: HKT + Sized { method reduce (line 9) | fn reduce(self, b: B, ba: F) -> B method reduce_right (line 13) | fn reduce_right(self, b: B, f: F) -> B function fold_map (line 25) | pub fn fold_map(container: C, mapper: F) -> M function reduce (line 35) | fn reduce(self, b: B, fa: F) -> B function reduce_right (line 43) | fn reduce_right(self, b: B, fa: F) -> B FILE: fp-core/src/functor.rs type Functor (line 3) | pub trait Functor: HKT { method fmap (line 4) | fn fmap(self, f: F) -> Self::Target function fmap (line 10) | fn fmap(self, f: F) -> Self::Target function fmap (line 20) | fn fmap(self, f: F) -> Self::Target FILE: fp-core/src/hkt.rs type HKT (line 6) | pub trait HKT { type Current (line 24) | type Current = T; type Target (line 25) | type Target = Result; type HKT3 (line 28) | pub trait HKT3 { FILE: fp-core/src/identity.rs function identity (line 1) | pub fn identity(a: A) -> A { FILE: fp-core/src/lens.rs type Lens (line 1) | pub trait Lens { method over (line 2) | fn over(s: &S, f: &dyn Fn(Option<&A>) -> A) -> S { method get (line 6) | fn get(s: &S) -> Option<&A>; method set (line 7) | fn set(a: A, s: &S) -> S; FILE: fp-core/src/monad.rs type Monad (line 4) | pub trait Monad: Chain + Applicative {} FILE: fp-core/src/monoid.rs type Monoid (line 4) | pub trait Monoid: Empty + Semigroup {} FILE: fp-core/src/pure.rs type Pure (line 3) | pub trait Pure: HKT { method of (line 4) | fn of(c: Self::Current) -> Self::Target; function of (line 8) | fn of(a: A) -> Self::Target { function of (line 14) | fn of(a: A) -> Self::Target { FILE: fp-core/src/semigroup.rs type Semigroup (line 1) | pub trait Semigroup { method combine (line 2) | fn combine(self, other: Self) -> Self; method combine (line 18) | fn combine(self, other: Self) -> Self { method combine (line 26) | fn combine(self, other: Self) -> Self { FILE: fp-core/src/setoid.rs type Setoid (line 1) | pub trait Setoid { method equals (line 2) | fn equals(&self, other: &Self) -> bool; method equals (line 6) | fn equals(&self, other: &Self) -> bool { method equals (line 12) | fn equals(&self, other: &Self) -> bool { FILE: fp-examples/src/adt_example.rs function adt_example (line 2) | fn adt_example() { FILE: fp-examples/src/anamorphism_example.rs function anamorphism_example (line 6) | fn anamorphism_example() { FILE: fp-examples/src/applicative_example.rs function applicative_example (line 7) | fn applicative_example() { function applicative_example_on_result (line 13) | fn applicative_example_on_result() { function test_option_pure (line 20) | fn test_option_pure() { function test_result_pure (line 26) | fn test_result_pure() { function test_option_apply (line 32) | fn test_option_apply() { function test_option_apply_none_value (line 40) | fn test_option_apply_none_value() { function test_option_apply_none_func (line 48) | fn test_option_apply_none_func() { function test_result_apply_ok (line 56) | fn test_result_apply_ok() { function test_result_apply_err_value (line 65) | fn test_result_apply_err_value() { function test_result_apply_err_func (line 74) | fn test_result_apply_err_func() { function test_applicative_identity_law_option (line 83) | fn test_applicative_identity_law_option() { function test_applicative_homomorphism_option (line 92) | fn test_applicative_homomorphism_option() { function test_apply_with_type_change (line 104) | fn test_apply_with_type_change() { FILE: fp-examples/src/arity_example.rs function arity (line 2) | fn arity() { FILE: fp-examples/src/catamorphism_example.rs function catamorphism_example (line 2) | fn catamorphism_example() { FILE: fp-examples/src/closure_example.rs function closure (line 2) | fn closure() { FILE: fp-examples/src/comonad_example.rs function comonad_test (line 7) | fn comonad_test() { FILE: fp-examples/src/continuation_example.rs function continuation (line 2) | fn continuation() { FILE: fp-examples/src/contracts_example.rs function contracts_example (line 2) | fn contracts_example() { FILE: fp-examples/src/currying_example.rs function currying (line 2) | fn currying() { FILE: fp-examples/src/empty_example.rs function empty_example_vec (line 6) | fn empty_example_vec() { function empty_example_string (line 12) | fn empty_example_string() { FILE: fp-examples/src/endomorphism_example.rs function endomorphism_example (line 2) | fn endomorphism_example() { FILE: fp-examples/src/foldable_example.rs function foldable_example (line 16) | fn foldable_example() { function fold_map_example (line 23) | fn fold_map_example() { function test_vec_reduce (line 31) | fn test_vec_reduce() { function test_vec_reduce_empty (line 38) | fn test_vec_reduce_empty() { function test_vec_reduce_multiply (line 45) | fn test_vec_reduce_multiply() { function test_vec_reduce_string_concat (line 52) | fn test_vec_reduce_string_concat() { function test_vec_reduce_max (line 59) | fn test_vec_reduce_max() { function test_fold_map_sum (line 66) | fn test_fold_map_sum() { function test_fold_map_string_concat (line 73) | fn test_fold_map_string_concat() { function test_fold_map_with_transformation (line 80) | fn test_fold_map_with_transformation() { function test_fold_map_empty_vec (line 87) | fn test_fold_map_empty_vec() { function test_reduce_filter_operation (line 94) | fn test_reduce_filter_operation() { function test_reduce_partition (line 106) | fn test_reduce_partition() { function test_reduce_count (line 134) | fn test_reduce_count() { function test_vec_reduce_right (line 141) | fn test_vec_reduce_right() { FILE: fp-examples/src/function_composition_example.rs function function_composition (line 6) | fn function_composition() { FILE: fp-examples/src/functor_example.rs function test_functor (line 29) | fn test_functor() { function test_functor_for_result (line 38) | fn test_functor_for_result() { function test_option_functor_some (line 45) | fn test_option_functor_some() { function test_option_functor_none (line 52) | fn test_option_functor_none() { function test_option_functor_chain (line 59) | fn test_option_functor_chain() { function test_option_functor_type_change (line 66) | fn test_option_functor_type_change() { function test_result_functor_ok (line 73) | fn test_result_functor_ok() { function test_result_functor_err (line 80) | fn test_result_functor_err() { function test_result_functor_chain (line 87) | fn test_result_functor_chain() { function test_result_functor_preserves_error (line 94) | fn test_result_functor_preserves_error() { function test_result_functor_type_change (line 101) | fn test_result_functor_type_change() { function test_functor_with_closure (line 108) | fn test_functor_with_closure() { function test_functor_identity_law_option (line 117) | fn test_functor_identity_law_option() { function test_functor_identity_law_result (line 125) | fn test_functor_identity_law_result() { function test_functor_composition_law_option (line 132) | fn test_functor_composition_law_option() { function test_functor_composition_law_result (line 147) | fn test_functor_composition_law_result() { FILE: fp-examples/src/hof_example.rs function hof (line 2) | fn hof() { FILE: fp-examples/src/homomorphism_example.rs function homomorphism_example (line 2) | fn homomorphism_example() { FILE: fp-examples/src/idempotent_example.rs function idempotent_sort (line 2) | fn idempotent_sort() { function idempotent_abs (line 16) | fn idempotent_abs() { FILE: fp-examples/src/isomorphism_example.rs type Coords (line 3) | struct Coords { function isomorphism_example (line 9) | fn isomorphism_example() { FILE: fp-examples/src/lambda_example.rs function lambdas (line 2) | fn lambdas() { FILE: fp-examples/src/lens_example.rs type Person (line 6) | struct Person { type PersonNameLens (line 11) | struct PersonNameLens; method get (line 14) | fn get(s: &Person) -> Option<&String> { method set (line 19) | fn set(a: String, _s: &Person) -> Person { type FirstLens (line 24) | struct FirstLens; method get (line 27) | fn get(s: &Vec) -> Option<&A> { method set (line 32) | fn set(_a: A, _s: &Vec) -> Vec { function lens_example (line 38) | fn lens_example() { FILE: fp-examples/src/main.rs function main (line 41) | fn main() { FILE: fp-examples/src/monad_example.rs function monad_example (line 8) | fn monad_example() { function monad_example_on_result (line 14) | fn monad_example_on_result() { function test_option_chain_some (line 21) | fn test_option_chain_some() { function test_option_chain_none (line 28) | fn test_option_chain_none() { function test_option_chain_returns_none (line 35) | fn test_option_chain_returns_none() { function test_option_chain_multiple (line 42) | fn test_option_chain_multiple() { function test_result_chain_ok (line 52) | fn test_result_chain_ok() { function test_result_chain_err (line 59) | fn test_result_chain_err() { function test_result_chain_multiple (line 66) | fn test_result_chain_multiple() { function test_monad_left_identity_option (line 77) | fn test_monad_left_identity_option() { function test_monad_right_identity_option (line 89) | fn test_monad_right_identity_option() { function test_monad_associativity_option (line 97) | fn test_monad_associativity_option() { function test_chain_validation_pattern (line 110) | fn test_chain_validation_pattern() { function test_chain_with_functor_option (line 138) | fn test_chain_with_functor_option() { FILE: fp-examples/src/monoid_example.rs function foo (line 8) | fn foo(a: i32) -> i32 { function monoid_example (line 13) | fn monoid_example() { function test_semigroup_i32_combine (line 28) | fn test_semigroup_i32_combine() { function test_semigroup_string_combine (line 36) | fn test_semigroup_string_combine() { function test_semigroup_vec_combine (line 44) | fn test_semigroup_vec_combine() { function test_empty_i32 (line 52) | fn test_empty_i32() { function test_empty_string (line 58) | fn test_empty_string() { function test_empty_vec (line 64) | fn test_empty_vec() { function test_monoid_left_identity_i32 (line 71) | fn test_monoid_left_identity_i32() { function test_monoid_right_identity_i32 (line 79) | fn test_monoid_right_identity_i32() { function test_monoid_left_identity_string (line 87) | fn test_monoid_left_identity_string() { function test_monoid_right_identity_string (line 94) | fn test_monoid_right_identity_string() { function test_semigroup_associativity_i32 (line 101) | fn test_semigroup_associativity_i32() { function test_semigroup_associativity_string (line 114) | fn test_semigroup_associativity_string() { function test_monoid_multiple_combines (line 126) | fn test_monoid_multiple_combines() { function test_practical_monoid_sum (line 135) | fn test_practical_monoid_sum() { function test_practical_monoid_concat (line 148) | fn test_practical_monoid_concat() { FILE: fp-examples/src/option_example.rs function option_example (line 6) | fn option_example() { FILE: fp-examples/src/partial_application_example.rs function partial_application (line 2) | fn partial_application() { FILE: fp-examples/src/pointed_functor_example.rs type Maybe (line 2) | pub enum Maybe { function of (line 10) | pub fn of(x: T) -> Self { function pointed_functor_example (line 16) | fn pointed_functor_example() { FILE: fp-examples/src/predicate_example.rs function predicate_example (line 2) | fn predicate_example() { FILE: fp-examples/src/purity_example.rs function purity (line 2) | fn purity() { function impure (line 9) | fn impure() { function impure2 (line 18) | fn impure2() { FILE: fp-examples/src/referential_transparency_example.rs function referential_transparency (line 2) | fn referential_transparency() { FILE: fp-examples/src/setoid_example.rs function setoid_example (line 6) | fn setoid_example() { FILE: fp-examples/src/side_effects_example.rs function side_effects (line 6) | fn side_effects() { FILE: fp-examples/src/type_signature_example.rs function type_signature_example (line 2) | fn type_signature_example() { FILE: fp-examples/src/value.rs function value_example (line 2) | fn value_example() {