attrtypes/arrowtype.hpp

struct gviz::attrtypes::ArrowModifier

Public Functions

inline constexpr bool operator==(const ArrowModifier &other) const noexcept
inline constexpr bool operator!=(const ArrowModifier &other) const noexcept

Public Members

ArrowSide side = ArrowSide::none
ArrowOpen open = ArrowOpen::none
struct gviz::attrtypes::ArrowShape

Public Functions

inline constexpr bool operator==(const ArrowShape &other) const noexcept
inline constexpr bool operator!=(const ArrowShape &other) const noexcept
inline constexpr bool operator==(const ArrowPrimaryShape &other) const noexcept
inline constexpr bool operator!=(const ArrowPrimaryShape &other) const noexcept
inline constexpr ArrowShape &normalize() noexcept
inline constexpr ArrowShape normalized() const noexcept

Public Members

ArrowPrimaryShape shape = ArrowPrimaryShape::none
ArrowModifier modifier = {}

Private Functions

inline constexpr ArrowModifier normalized_modifier() const noexcept
struct gviz::attrtypes::arrowshapes

Public Functions

arrowshapes() = delete

Public Static Attributes

static constexpr const ArrowShape none = {ArrowPrimaryShape::none}
static constexpr const ArrowShape normal = {ArrowPrimaryShape::normal}
static constexpr const ArrowShape lnormal = {ArrowPrimaryShape::normal, {ArrowSide::left}}
static constexpr const ArrowShape rnormal = {ArrowPrimaryShape::normal, {ArrowSide::right}}
static constexpr const ArrowShape onormal = {ArrowPrimaryShape::normal, {ArrowSide::none, ArrowOpen::open}}
static constexpr const ArrowShape olnormal = {ArrowPrimaryShape::normal, {ArrowSide::none, ArrowOpen::open}}
static constexpr const ArrowShape ornormal = {ArrowPrimaryShape::normal, {ArrowSide::none, ArrowOpen::open}}
static constexpr const ArrowShape box = {ArrowPrimaryShape::box}
static constexpr const ArrowShape lbox = {ArrowPrimaryShape::box, {ArrowSide::left}}
static constexpr const ArrowShape rbox = {ArrowPrimaryShape::box, {ArrowSide::right}}
static constexpr const ArrowShape obox = {ArrowPrimaryShape::box, {ArrowSide::none, ArrowOpen::open}}
static constexpr const ArrowShape olbox = {ArrowPrimaryShape::box, {ArrowSide::left, ArrowOpen::open}}
static constexpr const ArrowShape orbox = {ArrowPrimaryShape::box, {ArrowSide::right, ArrowOpen::open}}
static constexpr const ArrowShape crow = {ArrowPrimaryShape::crow}
static constexpr const ArrowShape lcrow = {ArrowPrimaryShape::crow, {ArrowSide::left}}
static constexpr const ArrowShape rcrow = {ArrowPrimaryShape::crow, {ArrowSide::right}}
static constexpr const ArrowShape diamond = {ArrowPrimaryShape::diamond}
static constexpr const ArrowShape ldiamond = {ArrowPrimaryShape::diamond, {ArrowSide::left}}
static constexpr const ArrowShape rdiamond = {ArrowPrimaryShape::diamond, {ArrowSide::right}}
static constexpr const ArrowShape odiamond = {ArrowPrimaryShape::diamond, {ArrowSide::none, ArrowOpen::open}}
static constexpr const ArrowShape oldiamond = {ArrowPrimaryShape::diamond, {ArrowSide::left, ArrowOpen::open}}
static constexpr const ArrowShape ordiamond = {ArrowPrimaryShape::diamond, {ArrowSide::right, ArrowOpen::open}}
static constexpr const ArrowShape dot = {ArrowPrimaryShape::dot}
static constexpr const ArrowShape odot = {ArrowPrimaryShape::dot, {ArrowSide::none, ArrowOpen::open}}
static constexpr const ArrowShape inv = {ArrowPrimaryShape::inv}
static constexpr const ArrowShape linv = {ArrowPrimaryShape::inv, {ArrowSide::left}}
static constexpr const ArrowShape rinv = {ArrowPrimaryShape::inv, {ArrowSide::right}}
static constexpr const ArrowShape oinv = {ArrowPrimaryShape::inv, {ArrowSide::none, ArrowOpen::open}}
static constexpr const ArrowShape olinv = {ArrowPrimaryShape::inv, {ArrowSide::left, ArrowOpen::open}}
static constexpr const ArrowShape orinv = {ArrowPrimaryShape::inv, {ArrowSide::right, ArrowOpen::open}}
static constexpr const ArrowShape tee = {ArrowPrimaryShape::tee}
static constexpr const ArrowShape ltee = {ArrowPrimaryShape::tee, {ArrowSide::left}}
static constexpr const ArrowShape rtee = {ArrowPrimaryShape::tee, {ArrowSide::right}}
static constexpr const ArrowShape vee = {ArrowPrimaryShape::vee}
static constexpr const ArrowShape lvee = {ArrowPrimaryShape::vee, {ArrowSide::left}}
static constexpr const ArrowShape rvee = {ArrowPrimaryShape::vee, {ArrowSide::right}}
static constexpr const ArrowShape curve = {ArrowPrimaryShape::curve}
static constexpr const ArrowShape lcurve = {ArrowPrimaryShape::curve, {ArrowSide::left}}
static constexpr const ArrowShape rcurve = {ArrowPrimaryShape::curve, {ArrowSide::right}}
static constexpr const ArrowShape icurve = {ArrowPrimaryShape::icurve}
static constexpr const ArrowShape licurve = {ArrowPrimaryShape::icurve, {ArrowSide::left}}
static constexpr const ArrowShape ricurve = {ArrowPrimaryShape::icurve, {ArrowSide::right}}
struct gviz::attrtypes::ArrowType

Public Functions

inline constexpr bool operator==(const ArrowType &other) const noexcept
inline constexpr bool operator!=(const ArrowType &other) const noexcept
inline constexpr bool operator==(const ArrowShape &other) const noexcept
inline constexpr bool operator!=(const ArrowShape &other) const noexcept
inline constexpr ArrowType &normalize() noexcept
inline constexpr ArrowType normalized() const noexcept
inline constexpr std::tuple<ArrowShape, ArrowShape, ArrowShape, ArrowShape> as_tuple() const noexcept
inline constexpr std::array<ArrowShape, 4> as_array() const noexcept

Public Members

ArrowShape shape1 = {}
ArrowShape shape2 = {}
ArrowShape shape3 = {}
ArrowShape shape4 = {}
namespace gviz
namespace gviz::attrtypes

Enums

enum class ArrowPrimaryShape : uint8_t

Values:

enumerator none
enumerator box
enumerator crow
enumerator curve
enumerator icurve
enumerator diamond
enumerator dot
enumerator inv
enumerator normal
enumerator tee
enumerator vee
enum class ArrowOpen : bool

Values:

enumerator none
enumerator open
enum class ArrowSide : uint8_t

Values:

enumerator none
enumerator left
enumerator right
file arrowtype.hpp
#include <>
#include <>
#include <>
dir /home/cthulhu/projects/repos/libgvizard/include/gvizard/attrtypes
dir /home/cthulhu/projects/repos/libgvizard/include/gvizard
dir /home/cthulhu/projects/repos/libgvizard/include