Loading...
Searching...
No Matches
SymEngine::SupVisitor Class Reference
+ Inheritance diagram for SymEngine::SupVisitor:
+ Collaboration diagram for SymEngine::SupVisitor:

Public Member Functions

void bvisit (const Basic &x)
 
void bvisit (const Set &x)
 
void bvisit (const Reals &x)
 
void bvisit (const Rationals &x)
 
void bvisit (const Integers &x)
 
void bvisit (const Naturals &x)
 
void bvisit (const Naturals0 &x)
 
void bvisit (const Interval &x)
 
void bvisit (const FiniteSet &x)
 
void bvisit (const Union &x)
 
void bvisit (const Complement &x)
 
void bvisit (const ImageSet &x)
 
RCP< const Basicapply (const Set &s)
 

Private Attributes

RCP< const Basicsup_
 

Detailed Description

Definition at line 10 of file set_funcs.cpp.

Constructor & Destructor Documentation

◆ SupVisitor()

SymEngine::SupVisitor::SupVisitor ( )
inline

Definition at line 16 of file set_funcs.cpp.

16{}

Member Function Documentation

◆ apply()

RCP< const Basic > SymEngine::SupVisitor::apply ( const Set s)
inline

Definition at line 83 of file set_funcs.cpp.

84 {
85 s.accept(*this);
86 return sup_;
87 };

◆ bvisit() [1/12]

void SymEngine::SupVisitor::bvisit ( const Basic x)
inline

Definition at line 18 of file set_funcs.cpp.

18{};

◆ bvisit() [2/12]

void SymEngine::SupVisitor::bvisit ( const Complement x)
inline

Definition at line 73 of file set_funcs.cpp.

74 {
75 throw NotImplementedError("sup for Complement not implemented");
76 };

◆ bvisit() [3/12]

void SymEngine::SupVisitor::bvisit ( const FiniteSet x)
inline

Definition at line 56 of file set_funcs.cpp.

57 {
58 const set_basic &container = x.get_container();
59 vec_basic v(container.begin(), container.end());
60 sup_ = max(v);
61 };
RCP< const Basic > max(const vec_basic &arg)
Canonicalize Max:
Definition: functions.cpp:3555

◆ bvisit() [4/12]

void SymEngine::SupVisitor::bvisit ( const ImageSet x)
inline

Definition at line 78 of file set_funcs.cpp.

79 {
80 throw NotImplementedError("sup for ImageSet not implemented");
81 };

◆ bvisit() [5/12]

void SymEngine::SupVisitor::bvisit ( const Integers x)
inline

Definition at line 36 of file set_funcs.cpp.

37 {
38 sup_ = infty(1);
39 };

◆ bvisit() [6/12]

void SymEngine::SupVisitor::bvisit ( const Interval x)
inline

Definition at line 51 of file set_funcs.cpp.

52 {
53 sup_ = x.get_end();
54 };

◆ bvisit() [7/12]

void SymEngine::SupVisitor::bvisit ( const Naturals x)
inline

Definition at line 41 of file set_funcs.cpp.

42 {
43 sup_ = infty(1);
44 };

◆ bvisit() [8/12]

void SymEngine::SupVisitor::bvisit ( const Naturals0 x)
inline

Definition at line 46 of file set_funcs.cpp.

47 {
48 sup_ = infty(1);
49 };

◆ bvisit() [9/12]

void SymEngine::SupVisitor::bvisit ( const Rationals x)
inline

Definition at line 31 of file set_funcs.cpp.

32 {
33 sup_ = infty(1);
34 };

◆ bvisit() [10/12]

void SymEngine::SupVisitor::bvisit ( const Reals x)
inline

Definition at line 26 of file set_funcs.cpp.

27 {
28 sup_ = infty(1);
29 };

◆ bvisit() [11/12]

void SymEngine::SupVisitor::bvisit ( const Set x)
inline

Definition at line 20 of file set_funcs.cpp.

21 {
22 throw SymEngineException(
23 "Set not partially ordered: supremum undefined");
24 };

◆ bvisit() [12/12]

void SymEngine::SupVisitor::bvisit ( const Union x)
inline

Definition at line 63 of file set_funcs.cpp.

64 {
65 vec_basic suprema;
66 for (auto &a : x.get_container()) {
67 a->accept(*this);
68 suprema.push_back(sup_);
69 }
70 sup_ = max(suprema);
71 };
T push_back(T... args)

Field Documentation

◆ sup_

RCP<const Basic> SymEngine::SupVisitor::sup_
private

Definition at line 13 of file set_funcs.cpp.


The documentation for this class was generated from the following file: