Chrysalis - Project Composer
Toggle main menu visibility
Loading...
Searching...
No Matches
NumberProxy.h
Go to the documentation of this file.
1
#ifndef CHRYSALIS_NUMBERPROXY_H
2
#define CHRYSALIS_NUMBERPROXY_H
3
4
#include "arguments/VectorArgument.h"
5
#include "arguments/SegmentArgument.h"
6
#include "arguments/PatternPointArgument.h"
7
#include "instructions/DartInstruction.h"
8
#include "instructions/EdgeDartInstruction.h"
9
#include "instructions/UnfoldEdgeDartInstruction.h"
10
11
namespace
Chrysalis
12
{
13
class
DartInstruction;
14
}
15
19
namespace
Chrysalis::Proxy
{
20
class
Number
{
21
public
:
22
class
Point
;
23
struct
Vector
{
24
class
Segment
;
25
};
26
struct
Segment
{
27
struct
And
{
28
class
Segment
;
29
};
30
};
31
explicit
Number
(
double
value);
32
explicit
Number
(args::number&& number);
33
operator
args::number&&();
34
private
:
35
args::number number_;
36
};
37
class
Number::Point
{
38
public
:
39
class
Vector
;
40
explicit
Point
(args::number&& number,
const
PatternPointArgument* point);
41
operator
args::number&&();
42
operator
const
PatternPointArgument*()
const
;
43
private
:
44
args::number number_;
45
const
PatternPointArgument* point_;
46
};
47
class
Number::Point::Vector
{
48
public
:
49
explicit
Vector
(args::number&& number,
const
PatternPointArgument* point,
const
args::vector* vector);
50
DartInstruction*
operator>>
(
const
args::vector* vector);
51
private
:
52
args::number number_;
53
const
args::vector* vector_;
54
const
PatternPointArgument* point_;
55
};
56
class
Number::Vector::Segment
{
57
public
:
58
explicit
Segment
(args::number&& number,
const
args::vector* vector,
const
args::segment* segment);
59
operator
EdgeDartInstruction*();
// NOLINT(cppcoreguidelines-explicit-constructor)
60
private
:
61
args::number number_;
62
const
args::vector* vector_;
63
const
args::segment* segment_;
64
};
65
class
Number::Segment::And::Segment
{
66
public
:
67
explicit
Segment
(args::number&& number,
const
args::segment* segment1,
const
args::segment* segment2);
68
operator
UnfoldEdgeDartInstruction*();
// NOLINT(cppcoreguidelines-explicit-constructor)
69
private
:
70
args::number number_;
71
const
args::segment* segment1_;
72
const
args::segment* segment2_;
73
};
74
}
76
77
#endif
//CHRYSALIS_NUMBERPROXY_H
Chrysalis::Proxy::Number::Point::Vector
Definition
NumberProxy.h:47
Chrysalis::Proxy::Number::Point::Vector::operator>>
DartInstruction * operator>>(const args::vector *vector)
Definition
NumberProxy.cpp:40
Chrysalis::Proxy::Number::Point::Vector::Vector
Vector(args::number &&number, const PatternPointArgument *point, const args::vector *vector)
Definition
NumberProxy.cpp:19
Chrysalis::Proxy::Number::Point
Definition
NumberProxy.h:37
Chrysalis::Proxy::Number::Point::Point
Point(args::number &&number, const PatternPointArgument *point)
Definition
NumberProxy.cpp:16
Chrysalis::Proxy::Number::Segment::And::Segment
Definition
NumberProxy.h:65
Chrysalis::Proxy::Number::Segment::And::Segment::Segment
Segment(args::number &&number, const args::segment *segment1, const args::segment *segment2)
Definition
NumberProxy.cpp:25
Chrysalis::Proxy::Number::Vector::Segment
Definition
NumberProxy.h:56
Chrysalis::Proxy::Number::Vector::Segment::Segment
Segment(args::number &&number, const args::vector *vector, const args::segment *segment)
Definition
NumberProxy.cpp:22
Chrysalis::Proxy::Number::Number
Number(double value)
Definition
NumberProxy.cpp:12
Chrysalis::Proxy
Definition
ConditionProxy.h:9
Chrysalis
Definition
composer.h:40
Chrysalis::Proxy::Number::Segment::And
Definition
NumberProxy.h:27
Chrysalis::Proxy::Number::Segment
Definition
NumberProxy.h:26
Chrysalis::Proxy::Number::Vector
Definition
NumberProxy.h:23
pattern
composer
include
proxies
NumberProxy.h
Generated by
1.17.0