13#if !defined(VITA_GENE_H)
20#include "utility/small_vector.h"
21#include "utility/utility.h"
41 [[nodiscard]]
locus locus_of_argument(std::size_t)
const;
42 small_vector<locus, K> arguments()
const;
45 using packed_index_t = std::uint16_t;
46 using arg_pack = small_vector<packed_index_t, K>;
48 enum :
decltype(K) {k_args = K};
56 void init_if_parametric();
75#include "kernel/gp/gene.tcc"
A gene is a unit of heredity in a living organism.
Together functions and terminals are referred to as symbols.
A symbol with zero-arity.
The main namespace for the project.
std::size_t index_t
Index in the genome.
std::ostream & operator<<(std::ostream &o, hash_t h)
Mainly useful for debugging / testing.