#pragma once // Some functions return default value when failed // meaning: 0, nullptr, etc. // No exeptions, only exeptions that can happen are from stdlib // You can define specific names to change how the library behaves // Define them in the file you include library in, before the library itself // Define LAMBDA_NOALIGN to minimize node sizes by sacrificing performance // Generaly isn't woth it // #define LAMBDA_NOALIGN // Define LAMBDA_NODEFAULTS to not include defaults.hpp // Doesn't really affect the performance // #define LAMBDA_NODEFAULTS // Define LAMBDA_ADDITIONALS to include additional values that are generaly // not needed // Only works if LAMBDA_NODEFAULTS is undefined #include "error.hpp" #include "nodes.hpp" #include "print.hpp" #include "size.hpp" #include "copy.hpp" #include "rename.hpp" #include "apply.hpp" #include "reduce.hpp" #ifndef LAMBDA_NODEFAULTS #include "defaults.hpp" #endif #if (!defined(LAMBDA_NODEFAULTS) && defined(LAMBDA_ADDITIONALS)) #include "additionals.hpp" #endif