#pragma once #include #include "value.hh" namespace nix { /** * A GC compatible vector that may used a reserved portion of `nItems` on the stack instead of allocating on the heap. */ template using SmallVector = boost::container::small_vector>; /** * A vector of value pointers. See `SmallVector`. */ template using SmallValueVector = SmallVector; /** * A vector of values that must not be referenced after the vector is destroyed. * * See also `SmallValueVector`. */ template using SmallTemporaryValueVector = SmallVector; }