3 #include "TypeAliases.h" 5 #include "FieldCache.h" 34 const std::vector<Entity>& CachedNodes();
35 const std::vector<Entity>& CachedVars();
36 const std::vector<Entity>& CachedVarsAndConstants();
37 const std::vector<Entity>& CachedDirectChildren();
38 EntityRef GetReference()
const {
return reference; }
39 const Entity& CachedEvaled();
40 const Entity& CachedInnerSimplified();
41 const std::string& CachedString();
47 enum class ApproachFrom : std::int32_t
56 explicit Entity(Internal::EntityRef handle);
58 std::shared_ptr<Internal::EntityInstance> innerEntityInstance;
62 Entity(
const std::string& expr);
66 std::string ToString()
const;
67 std::string Latexise()
const;
75 std::vector<Entity> Alternate()
const;
79 std::int64_t AsInteger()
const;
80 std::pair<std::int64_t, std::int64_t> AsRational()
const;
81 double AsReal()
const;
82 std::complex<double> AsComplex()
const;
85 const std::vector<Entity>&
Nodes()
const {
return innerEntityInstance.get()->CachedNodes(); }
86 const std::vector<Entity>&
Vars()
const {
return innerEntityInstance.get()->CachedVars(); }
87 const std::vector<Entity>&
VarsAndConsts()
const {
return innerEntityInstance.get()->CachedVarsAndConstants(); }
88 const std::vector<Entity>&
DirectChildren()
const {
return innerEntityInstance.get()->CachedDirectChildren(); }
89 const Entity InnerSimplified()
const {
return innerEntityInstance.get()->CachedInnerSimplified(); }
90 const Entity Evaled()
const {
return innerEntityInstance.get()->CachedEvaled(); }
92 friend Internal::EntityRef GetHandle(
const Entity& e);
93 friend Entity CreateByHandle(Internal::EntityRef handle);
ApproachFrom
Where to tend to the given number in limits
Definition: Limit.Definition.cs:13
IReadOnlyCollection< Variable > VarsAndConsts
Set of unique variables, for example it extracts x, goose, pi from (x + 2 * goose) - pi * x ...
Definition: Entity.Definition.cs:549
Definition: AngouriMath.h:103
Definition: AngouriMath.cpp:20
IReadOnlyList< Variable > Vars
Set of unique variables, for example it extracts x, goose from (x + 2 * goose) - pi * x ...
Definition: Entity.Definition.cs:504
Means that the limit is considered valid if and only if Left-sided limit exists and Right-sided limit...
IEnumerable< Entity > Nodes
The list of all subnodes of the given expression, including its own.
Definition: Entity.Definition.cs:162
If x tends from the right, i.
partial record Entity
This is the main class in AngouriMath.
Definition: StringToEachClass.Classes.cs:14
If x tends from the left, i.
Definition: AngouriMath.h:54
Definition: AngouriMath.h:20
IReadOnlyList< Entity > DirectChildren
Represents all direct children of a node
Definition: Entity.Definition.cs:132
Definition: FieldCache.h:9