Chrysalis - Project Composer
Loading...
Searching...
No Matches
SegmentProxy.h
Go to the documentation of this file.
1#ifndef CHRYSALIS_SEGMENT_H
2#define CHRYSALIS_SEGMENT_H
3
4#include "LineProxy.h"
5#include "VectorProxy.h"
6#include "arguments/SegmentArgument.h"
7
11namespace Chrysalis::Proxy {
12 class Segment {
13 public:
14 class And {
15 public:
16 class Segment;
17
18 explicit And(const args::segment* segment);
19
20 Vector::Segment vec(const args::vector* vector) const;
21 Segment seg(const args::segment* segment) const;
22
23 And* operator->();
24 private:
25 const args::segment* segment_;
26 };
27 explicit Segment(args::segment* segment);
28 operator args::segment*() const;
29 And operator->() const;
30 Vector::And::Vector operator&(const args::vector* vector) const;
31 Line::Lines operator|(const args::container<args::line>* lines) const;
32 Point::Vector operator>>(const PatternPointArgument* point) const;
33 private:
34 args::segment* segment_;
35 };
37 public:
38 struct And {
39 class Number;
40 };
41 explicit Segment(const args::segment* segment1, const args::segment* segment2);
42 Number::Segment::And::Segment operator()(args::number&& number) const;
43 private:
44 const args::segment* segment1_;
45 const args::segment* segment2_;
46 };
47}
49
50#endif //CHRYSALIS_SEGMENT_H
Definition LineProxy.h:21
Definition NumberProxy.h:20
Definition PointProxy.h:21
Definition SegmentProxy.h:36
Number::Segment::And::Segment operator()(args::number &&number) const
Definition SegmentProxy.cpp:28
Segment(const args::segment *segment1, const args::segment *segment2)
Definition SegmentProxy.cpp:9
Definition SegmentProxy.h:14
And * operator->()
Definition SegmentProxy.cpp:24
Segment seg(const args::segment *segment) const
Definition SegmentProxy.cpp:20
Vector::Segment vec(const args::vector *vector) const
Definition SegmentProxy.cpp:44
And(const args::segment *segment)
Definition SegmentProxy.cpp:7
And operator->() const
Definition SegmentProxy.cpp:16
Point::Vector operator>>(const PatternPointArgument *point) const
Definition SegmentProxy.cpp:36
Vector::And::Vector operator&(const args::vector *vector) const
Definition SegmentProxy.cpp:40
Segment(args::segment *segment)
Definition SegmentProxy.cpp:5
Line::Lines operator|(const args::container< args::line > *lines) const
Definition SegmentProxy.cpp:32
Definition VectorProxy.h:45
Definition VectorProxy.h:53
Definition ConditionProxy.h:9