├── .travis.yml ├── Doxyfile ├── LICENSE ├── README.md ├── docs ├── Parsec-I.md └── Parsec-II.md ├── examples ├── Makefile ├── parser_combinator │ ├── parser_combinator.cpp │ └── parser_combinator.h └── parser_combinatorics.cpp ├── include └── ftl │ ├── concepts │ ├── applicative.h │ ├── basic.h │ ├── common.h │ ├── foldable.h │ ├── functor.h │ ├── iterator.h │ ├── monad.h │ ├── monoid.h │ ├── orderable.h │ └── zippable.h │ ├── either.h │ ├── either_trans.h │ ├── forward_list.h │ ├── function.h │ ├── functional.h │ ├── future.h │ ├── implementation │ ├── currying.h │ ├── function.h │ ├── maybe_iterator.h │ └── tuple_apply.h │ ├── lazy.h │ ├── lazy_trans.h │ ├── list.h │ ├── map.h │ ├── maybe.h │ ├── maybe_trans.h │ ├── memory.h │ ├── ord.h │ ├── prelude.h │ ├── set.h │ ├── string.h │ ├── sum_type.h │ ├── tuple.h │ ├── type_functions.h │ ├── type_traits.h │ ├── unordered_map.h │ └── vector.h └── tests ├── CMakeLists.txt ├── base.h ├── concept_tests.cpp ├── concept_tests.h ├── either_tests.cpp ├── either_tests.h ├── eithert_tests.cpp ├── eithert_tests.h ├── functional_tests.cpp ├── functional_tests.h ├── future_tests.cpp ├── future_tests.h ├── fwdlist_tests.cpp ├── fwdlist_tests.h ├── lazy_tests.cpp ├── lazy_tests.h ├── lazyt_tests.cpp ├── lazyt_tests.h ├── list_tests.cpp ├── list_tests.h ├── main.cpp ├── map_tests.cpp ├── map_tests.h ├── maybe_tests.cpp ├── maybe_tests.h ├── maybet_tests.cpp ├── maybet_tests.h ├── memory_tests.cpp ├── memory_tests.h ├── ord_tests.cpp ├── ord_tests.h ├── prelude_tests.cpp ├── prelude_tests.h ├── set_tests.cpp ├── set_tests.h ├── string_tests.cpp ├── string_tests.h ├── sum_type_tests.cpp ├── sum_type_tests.h ├── tuple_tests.cpp ├── tuple_tests.h ├── unordered_map_tests.cpp ├── unordered_map_tests.h ├── vector_tests.cpp └── vector_tests.h /.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/.travis.yml -------------------------------------------------------------------------------- /Doxyfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/Doxyfile -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/README.md -------------------------------------------------------------------------------- /docs/Parsec-I.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/docs/Parsec-I.md -------------------------------------------------------------------------------- /docs/Parsec-II.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/docs/Parsec-II.md -------------------------------------------------------------------------------- /examples/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/examples/Makefile -------------------------------------------------------------------------------- /examples/parser_combinator/parser_combinator.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/examples/parser_combinator/parser_combinator.cpp -------------------------------------------------------------------------------- /examples/parser_combinator/parser_combinator.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/examples/parser_combinator/parser_combinator.h -------------------------------------------------------------------------------- /examples/parser_combinatorics.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/examples/parser_combinatorics.cpp -------------------------------------------------------------------------------- /include/ftl/concepts/applicative.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/applicative.h -------------------------------------------------------------------------------- /include/ftl/concepts/basic.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/basic.h -------------------------------------------------------------------------------- /include/ftl/concepts/common.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/common.h -------------------------------------------------------------------------------- /include/ftl/concepts/foldable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/foldable.h -------------------------------------------------------------------------------- /include/ftl/concepts/functor.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/functor.h -------------------------------------------------------------------------------- /include/ftl/concepts/iterator.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/iterator.h -------------------------------------------------------------------------------- /include/ftl/concepts/monad.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/monad.h -------------------------------------------------------------------------------- /include/ftl/concepts/monoid.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/monoid.h -------------------------------------------------------------------------------- /include/ftl/concepts/orderable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/orderable.h -------------------------------------------------------------------------------- /include/ftl/concepts/zippable.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/concepts/zippable.h -------------------------------------------------------------------------------- /include/ftl/either.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/either.h -------------------------------------------------------------------------------- /include/ftl/either_trans.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/either_trans.h -------------------------------------------------------------------------------- /include/ftl/forward_list.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/forward_list.h -------------------------------------------------------------------------------- /include/ftl/function.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/function.h -------------------------------------------------------------------------------- /include/ftl/functional.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/functional.h -------------------------------------------------------------------------------- /include/ftl/future.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/future.h -------------------------------------------------------------------------------- /include/ftl/implementation/currying.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/implementation/currying.h -------------------------------------------------------------------------------- /include/ftl/implementation/function.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/implementation/function.h -------------------------------------------------------------------------------- /include/ftl/implementation/maybe_iterator.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/implementation/maybe_iterator.h -------------------------------------------------------------------------------- /include/ftl/implementation/tuple_apply.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/implementation/tuple_apply.h -------------------------------------------------------------------------------- /include/ftl/lazy.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/lazy.h -------------------------------------------------------------------------------- /include/ftl/lazy_trans.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/lazy_trans.h -------------------------------------------------------------------------------- /include/ftl/list.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/list.h -------------------------------------------------------------------------------- /include/ftl/map.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/map.h -------------------------------------------------------------------------------- /include/ftl/maybe.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/maybe.h -------------------------------------------------------------------------------- /include/ftl/maybe_trans.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/maybe_trans.h -------------------------------------------------------------------------------- /include/ftl/memory.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/memory.h -------------------------------------------------------------------------------- /include/ftl/ord.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/ord.h -------------------------------------------------------------------------------- /include/ftl/prelude.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/prelude.h -------------------------------------------------------------------------------- /include/ftl/set.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/set.h -------------------------------------------------------------------------------- /include/ftl/string.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/string.h -------------------------------------------------------------------------------- /include/ftl/sum_type.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/sum_type.h -------------------------------------------------------------------------------- /include/ftl/tuple.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/tuple.h -------------------------------------------------------------------------------- /include/ftl/type_functions.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/type_functions.h -------------------------------------------------------------------------------- /include/ftl/type_traits.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/type_traits.h -------------------------------------------------------------------------------- /include/ftl/unordered_map.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/unordered_map.h -------------------------------------------------------------------------------- /include/ftl/vector.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/include/ftl/vector.h -------------------------------------------------------------------------------- /tests/CMakeLists.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/CMakeLists.txt -------------------------------------------------------------------------------- /tests/base.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/base.h -------------------------------------------------------------------------------- /tests/concept_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/concept_tests.cpp -------------------------------------------------------------------------------- /tests/concept_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/concept_tests.h -------------------------------------------------------------------------------- /tests/either_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/either_tests.cpp -------------------------------------------------------------------------------- /tests/either_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/either_tests.h -------------------------------------------------------------------------------- /tests/eithert_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/eithert_tests.cpp -------------------------------------------------------------------------------- /tests/eithert_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/eithert_tests.h -------------------------------------------------------------------------------- /tests/functional_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/functional_tests.cpp -------------------------------------------------------------------------------- /tests/functional_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/functional_tests.h -------------------------------------------------------------------------------- /tests/future_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/future_tests.cpp -------------------------------------------------------------------------------- /tests/future_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/future_tests.h -------------------------------------------------------------------------------- /tests/fwdlist_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/fwdlist_tests.cpp -------------------------------------------------------------------------------- /tests/fwdlist_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/fwdlist_tests.h -------------------------------------------------------------------------------- /tests/lazy_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/lazy_tests.cpp -------------------------------------------------------------------------------- /tests/lazy_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/lazy_tests.h -------------------------------------------------------------------------------- /tests/lazyt_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/lazyt_tests.cpp -------------------------------------------------------------------------------- /tests/lazyt_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/lazyt_tests.h -------------------------------------------------------------------------------- /tests/list_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/list_tests.cpp -------------------------------------------------------------------------------- /tests/list_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/list_tests.h -------------------------------------------------------------------------------- /tests/main.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/main.cpp -------------------------------------------------------------------------------- /tests/map_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/map_tests.cpp -------------------------------------------------------------------------------- /tests/map_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/map_tests.h -------------------------------------------------------------------------------- /tests/maybe_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/maybe_tests.cpp -------------------------------------------------------------------------------- /tests/maybe_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/maybe_tests.h -------------------------------------------------------------------------------- /tests/maybet_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/maybet_tests.cpp -------------------------------------------------------------------------------- /tests/maybet_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/maybet_tests.h -------------------------------------------------------------------------------- /tests/memory_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/memory_tests.cpp -------------------------------------------------------------------------------- /tests/memory_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/memory_tests.h -------------------------------------------------------------------------------- /tests/ord_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/ord_tests.cpp -------------------------------------------------------------------------------- /tests/ord_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/ord_tests.h -------------------------------------------------------------------------------- /tests/prelude_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/prelude_tests.cpp -------------------------------------------------------------------------------- /tests/prelude_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/prelude_tests.h -------------------------------------------------------------------------------- /tests/set_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/set_tests.cpp -------------------------------------------------------------------------------- /tests/set_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/set_tests.h -------------------------------------------------------------------------------- /tests/string_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/string_tests.cpp -------------------------------------------------------------------------------- /tests/string_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/string_tests.h -------------------------------------------------------------------------------- /tests/sum_type_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/sum_type_tests.cpp -------------------------------------------------------------------------------- /tests/sum_type_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/sum_type_tests.h -------------------------------------------------------------------------------- /tests/tuple_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/tuple_tests.cpp -------------------------------------------------------------------------------- /tests/tuple_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/tuple_tests.h -------------------------------------------------------------------------------- /tests/unordered_map_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/unordered_map_tests.cpp -------------------------------------------------------------------------------- /tests/unordered_map_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/unordered_map_tests.h -------------------------------------------------------------------------------- /tests/vector_tests.cpp: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/vector_tests.cpp -------------------------------------------------------------------------------- /tests/vector_tests.h: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/beark/ftl/HEAD/tests/vector_tests.h --------------------------------------------------------------------------------