Celeritas
0.5.0-86+4a8eea4
|
#include <functional>
#include <iosfwd>
#include <string>
#include <variant>
#include <vector>
#include "corecel/Config.hh"
#include "corecel/OpaqueId.hh"
#include "corecel/math/HashUtils.hh"
#include "orange/OrangeTypes.hh"
Classes | |
struct | celeritas::orangeinp::True |
Node that represents "always true" for simplification. More... | |
struct | celeritas::orangeinp::False |
Node that represents "always false" for simplification. More... | |
struct | celeritas::orangeinp::Aliased |
(Internal) stand-in node for a replacement for another node ID More... | |
struct | celeritas::orangeinp::Negated |
Node that negates the next ID. More... | |
struct | celeritas::orangeinp::Surface |
Node that is a single surface. More... | |
struct | celeritas::orangeinp::Joined |
Internal node applying an operation to multiple leaf nodes. More... | |
Macros | |
#define | CELER_DEFINE_CSG_NE(CLS) |
Typedefs | |
using | celeritas::orangeinp::OperatorToken = logic::OperatorToken |
Operator token. | |
using | celeritas::orangeinp::NodeId = OpaqueId< struct Node_ > |
Unique identifier for a node. | |
using | celeritas::orangeinp::Node = std::variant< True, False, Aliased, Negated, Surface, Joined > |
Generic node. | |
Enumerations | |
enum class | celeritas::orangeinp::UnitSimplification : size_type { none = 0 , infix_logic , size_ } |
Optional transformations to apply when building a CsgUnit. More... | |
Functions | |
constexpr bool | celeritas::orangeinp::operator== (True const &, True const &) |
constexpr bool | celeritas::orangeinp::operator== (False const &, False const &) |
constexpr bool | celeritas::orangeinp::operator== (Aliased const &a, Aliased const &b) |
constexpr bool | celeritas::orangeinp::operator== (Negated const &a, Negated const &b) |
constexpr bool | celeritas::orangeinp::operator== (Surface const &a, Surface const &b) |
constexpr bool | celeritas::orangeinp::operator== (Joined const &a, Joined const &b) |
constexpr bool | celeritas::orangeinp::operator!= (True const &a, True const &b) |
constexpr bool | celeritas::orangeinp::operator!= (False const &a, False const &b) |
constexpr bool | celeritas::orangeinp::operator!= (Aliased const &a, Aliased const &b) |
constexpr bool | celeritas::orangeinp::operator!= (Negated const &a, Negated const &b) |
constexpr bool | celeritas::orangeinp::operator!= (Surface const &a, Surface const &b) |
constexpr bool | celeritas::orangeinp::operator!= (Joined const &a, Joined const &b) |
std::string | celeritas::orangeinp::to_string (Node const &n) |
Convert a node variant to a string. | |
constexpr bool | celeritas::orangeinp::is_boolean_node (Node const &n) |
Whether a node is a boolean (True or False instances) | |
std::ostream & | celeritas::orangeinp::operator<< (std::ostream &os, True const &) |
std::ostream & | celeritas::orangeinp::operator<< (std::ostream &os, False const &) |
std::ostream & | celeritas::orangeinp::operator<< (std::ostream &os, Aliased const &n) |
std::ostream & | celeritas::orangeinp::operator<< (std::ostream &os, Negated const &n) |
std::ostream & | celeritas::orangeinp::operator<< (std::ostream &os, Surface const &n) |
std::ostream & | celeritas::orangeinp::operator<< (std::ostream &os, Joined const &n) |
std::ostream & | celeritas::orangeinp::operator<< (std::ostream &os, Node const &node) |
Variables | |
constexpr OperatorToken | celeritas::orangeinp::op_and = OperatorToken::land |
constexpr OperatorToken | celeritas::orangeinp::op_or = OperatorToken::lor |
#define CELER_DEFINE_CSG_NE | ( | CLS | ) |
|
strong |
Optional transformations to apply when building a CsgUnit.
Enumerator | |
---|---|
none | No simplification. |
infix_logic | CsgTree suitable for infix logic evaluation. |
std::ostream & celeritas::orangeinp::operator<< | ( | std::ostream & | os, |
Aliased const & | n | ||
) |
Write Node variants to a stream
std::ostream & celeritas::orangeinp::operator<< | ( | std::ostream & | os, |
False const & | |||
) |
Write Node variants to a stream
std::ostream & celeritas::orangeinp::operator<< | ( | std::ostream & | os, |
Joined const & | n | ||
) |
Write Node variants to a stream
std::ostream & celeritas::orangeinp::operator<< | ( | std::ostream & | os, |
Negated const & | n | ||
) |
Write Node variants to a stream
std::ostream & celeritas::orangeinp::operator<< | ( | std::ostream & | os, |
Node const & | node | ||
) |
Write Node variants to a stream
std::ostream & celeritas::orangeinp::operator<< | ( | std::ostream & | os, |
Surface const & | n | ||
) |
Write Node variants to a stream
std::ostream & celeritas::orangeinp::operator<< | ( | std::ostream & | os, |
True const & | |||
) |
Write Node variants to a stream