tlx/0.6.1

tlx is a collection of C++ helpers and extensions universally needed, but not found in the STL.
Recipe info
2023-06-24

Available packages
Linux
Windows
macOS
macOS Apple Silicon

Install
Add the following line to your conanfile.txt:
[requires]
tlx/0.6.1

Using tlx

Note

If you are new with Conan, we recommend to read the section how to consume packages.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
tlx/0.6.1
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("tlx/0.6.1")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): tlx
  • CMake target name(s): tlx
  • pkg-config file name(s): tlx.pc

A simple use case using the CMake file name and the global target:

# ...
find_package(tlx REQUIRED)
# ...
target_link_libraries(YOUR_TARGET tlx)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the tlx homepage listed above:

#include "tlx/algorithm.hpp"
#include "tlx/algorithm/exclusive_scan.hpp"
#include "tlx/algorithm/is_sorted_cmp.hpp"
#include "tlx/algorithm/merge_advance.hpp"
#include "tlx/algorithm/merge_combine.hpp"
#include "tlx/algorithm/multisequence_partition.hpp"
#include "tlx/algorithm/multisequence_selection.hpp"
#include "tlx/algorithm/multiway_merge.hpp"
#include "tlx/algorithm/multiway_merge_splitting.hpp"
#include "tlx/algorithm/parallel_multiway_merge.hpp"
#include "tlx/algorithm/random_bipartition_shuffle.hpp"
#include "tlx/allocator_base.hpp"
#include "tlx/backtrace.hpp"
#include "tlx/cmdline_parser.hpp"
#include "tlx/container.hpp"
#include "tlx/container/btree.hpp"
#include "tlx/container/btree_map.hpp"
#include "tlx/container/btree_multimap.hpp"
#include "tlx/container/btree_multiset.hpp"
#include "tlx/container/btree_set.hpp"
#include "tlx/container/d_ary_addressable_int_heap.hpp"
#include "tlx/container/d_ary_heap.hpp"
#include "tlx/container/loser_tree.hpp"
#include "tlx/container/lru_cache.hpp"
#include "tlx/container/radix_heap.hpp"
#include "tlx/container/ring_buffer.hpp"
#include "tlx/container/simple_vector.hpp"
#include "tlx/container/splay_tree.hpp"
#include "tlx/container/string_view.hpp"
#include "tlx/counting_ptr.hpp"
#include "tlx/define.hpp"
#include "tlx/define/attribute_always_inline.hpp"
#include "tlx/define/attribute_fallthrough.hpp"
#include "tlx/define/attribute_format_printf.hpp"
#include "tlx/define/attribute_packed.hpp"
#include "tlx/define/attribute_warn_unused_result.hpp"
#include "tlx/define/constexpr.hpp"
#include "tlx/define/deprecated.hpp"
#include "tlx/define/endian.hpp"
#include "tlx/define/likely.hpp"
#include "tlx/define/visibility_hidden.hpp"
#include "tlx/delegate.hpp"
#include "tlx/die.hpp"
#include "tlx/die/core.hpp"
#include "tlx/digest.hpp"
#include "tlx/digest/md5.hpp"
#include "tlx/digest/sha1.hpp"
#include "tlx/digest/sha256.hpp"
#include "tlx/digest/sha512.hpp"
#include "tlx/logger.hpp"
#include "tlx/logger/all.hpp"
#include "tlx/logger/array.hpp"
#include "tlx/logger/core.hpp"
#include "tlx/logger/deque.hpp"
#include "tlx/logger/map.hpp"
#include "tlx/logger/set.hpp"
#include "tlx/logger/tuple.hpp"
#include "tlx/logger/unordered_map.hpp"
#include "tlx/logger/unordered_set.hpp"
#include "tlx/logger/wrap_unprintable.hpp"
#include "tlx/math.hpp"
#include "tlx/math/abs_diff.hpp"
#include "tlx/math/aggregate.hpp"
#include "tlx/math/aggregate_min_max.hpp"
#include "tlx/math/bswap.hpp"
#include "tlx/math/bswap_be.hpp"
#include "tlx/math/bswap_le.hpp"
#include "tlx/math/clz.hpp"
#include "tlx/math/ctz.hpp"
#include "tlx/math/div_ceil.hpp"
#include "tlx/math/ffs.hpp"
#include "tlx/math/integer_log2.hpp"
#include "tlx/math/is_power_of_two.hpp"
#include "tlx/math/polynomial_regression.hpp"
#include "tlx/math/popcount.hpp"
#include "tlx/math/power_to_the.hpp"
#include "tlx/math/rol.hpp"
#include "tlx/math/ror.hpp"
#include "tlx/math/round_to_power_of_two.hpp"
#include "tlx/math/round_up.hpp"
#include "tlx/math/sgn.hpp"
#include "tlx/meta.hpp"
#include "tlx/meta/apply_tuple.hpp"
#include "tlx/meta/call_for_range.hpp"
#include "tlx/meta/call_foreach.hpp"
#include "tlx/meta/call_foreach_tuple.hpp"
#include "tlx/meta/call_foreach_tuple_with_index.hpp"
#include "tlx/meta/call_foreach_with_index.hpp"
#include "tlx/meta/enable_if.hpp"
#include "tlx/meta/fold_left.hpp"
#include "tlx/meta/fold_left_tuple.hpp"
#include "tlx/meta/fold_right.hpp"
#include "tlx/meta/fold_right_tuple.hpp"
#include "tlx/meta/function_chain.hpp"
#include "tlx/meta/function_stack.hpp"
#include "tlx/meta/has_member.hpp"
#include "tlx/meta/has_method.hpp"
#include "tlx/meta/index_sequence.hpp"
#include "tlx/meta/is_std_array.hpp"
#include "tlx/meta/is_std_pair.hpp"
#include "tlx/meta/is_std_tuple.hpp"
#include "tlx/meta/is_std_vector.hpp"
#include "tlx/meta/log2.hpp"
#include "tlx/meta/no_operation.hpp"
#include "tlx/meta/static_index.hpp"
#include "tlx/meta/vexpand.hpp"
#include "tlx/meta/vmap_for_range.hpp"
#include "tlx/meta/vmap_foreach.hpp"
#include "tlx/meta/vmap_foreach_tuple.hpp"
#include "tlx/meta/vmap_foreach_tuple_with_index.hpp"
#include "tlx/meta/vmap_foreach_with_index.hpp"
#include "tlx/multi_timer.hpp"
#include "tlx/port.hpp"
#include "tlx/port/setenv.hpp"
#include "tlx/semaphore.hpp"
#include "tlx/simple_vector.hpp"
#include "tlx/siphash.hpp"
#include "tlx/sort.hpp"
#include "tlx/sort/networks/best.hpp"
#include "tlx/sort/networks/bose_nelson.hpp"
#include "tlx/sort/networks/bose_nelson_parameter.hpp"
#include "tlx/sort/networks/cswap.hpp"
#include "tlx/sort/parallel_mergesort.hpp"
#include "tlx/sort/strings.hpp"
#include "tlx/sort/strings/insertion_sort.hpp"
#include "tlx/sort/strings/multikey_quicksort.hpp"
#include "tlx/sort/strings/parallel_sample_sort.hpp"
#include "tlx/sort/strings/radix_sort.hpp"
#include "tlx/sort/strings/sample_sort_tools.hpp"
#include "tlx/sort/strings/string_ptr.hpp"
#include "tlx/sort/strings/string_set.hpp"
#include "tlx/sort/strings_parallel.hpp"
#include "tlx/stack_allocator.hpp"
#include "tlx/string.hpp"
#include "tlx/string/appendline.hpp"
#include "tlx/string/base64.hpp"
#include "tlx/string/bitdump.hpp"
#include "tlx/string/compare_icase.hpp"
#include "tlx/string/contains.hpp"
#include "tlx/string/contains_word.hpp"
#include "tlx/string/ends_with.hpp"
#include "tlx/string/equal_icase.hpp"
#include "tlx/string/erase_all.hpp"
#include "tlx/string/escape_html.hpp"
#include "tlx/string/escape_uri.hpp"
#include "tlx/string/expand_environment_variables.hpp"
#include "tlx/string/extract_between.hpp"
#include "tlx/string/format_iec_units.hpp"
#include "tlx/string/format_si_iec_units.hpp"
#include "tlx/string/format_si_units.hpp"
#include "tlx/string/hash_djb2.hpp"
#include "tlx/string/hash_sdbm.hpp"
#include "tlx/string/hexdump.hpp"
#include "tlx/string/index_of.hpp"
#include "tlx/string/join.hpp"
#include "tlx/string/join_generic.hpp"
#include "tlx/string/join_quoted.hpp"
#include "tlx/string/less_icase.hpp"
#include "tlx/string/levenshtein.hpp"
#include "tlx/string/pad.hpp"
#include "tlx/string/parse_si_iec_units.hpp"
#include "tlx/string/parse_uri.hpp"
#include "tlx/string/parse_uri_form_data.hpp"
#include "tlx/string/replace.hpp"
#include "tlx/string/split.hpp"
#include "tlx/string/split_quoted.hpp"
#include "tlx/string/split_view.hpp"
#include "tlx/string/split_words.hpp"
#include "tlx/string/ssprintf.hpp"
#include "tlx/string/ssprintf_generic.hpp"
#include "tlx/string/starts_with.hpp"
#include "tlx/string/to_lower.hpp"
#include "tlx/string/to_upper.hpp"
#include "tlx/string/trim.hpp"
#include "tlx/string/union_words.hpp"
#include "tlx/string/word_wrap.hpp"
#include "tlx/thread_barrier_mutex.hpp"
#include "tlx/thread_barrier_spin.hpp"
#include "tlx/thread_pool.hpp"
#include "tlx/timestamp.hpp"
#include "tlx/unused.hpp"
#include "tlx/vector_free.hpp"
#include "tlx/version.hpp"