로딩중...
검색중...
일치하는것 없음
by::defAssignExpr 클래스 참조

Variable definition with assignment expression 더 자세히 ...

#include <defAssignExpr.hpp>

by::defAssignExpr에 대한 상속 다이어그램 :
by::defVarExpr by::expr by::node by::frameInteractable

Public 멤버 함수

str infer () const override
 
const nodegetExplicitType () const
 
void setExplicitType (const node &newType)
 Sets the explicitly declared type for the variable being defined.
 
- by::defVarExpr(으)로부터 상속된 Public 멤버 함수
str eval (const args &a) override
 
const std::string & getName () const
 
nodegetRight ()
 
const nodegetRight () const BY_CONST_FUNC(getRight()) void setRight(const node &rhs)
 
nodegetTo ()
 Gets the target node where the variable is to be defined.
 
const nodegetTo () const BY_CONST_FUNC(getTo()) nbool isToFrame() const
 Checks if the target node ('to') represents a frame.
 
void setTo (const node &to)
 
str infer () const override
 
void onCloneDeep (const clonable &rhs) override
 
str makeNewOrigin ()
 Creates a new origin object based on this variable definition.
 
const modifiergetNewModifier () const
 
- by::expr(으)로부터 상속된 Public 멤버 함수
scopesubs () override
 
nbool isImpli (const type &to) const override
 
priorType prioritize (const args &a) const override
 
const srcgetSrc () const override
 
- by::node(으)로부터 상속된 Public 멤버 함수
me & operator[] (const std::string &name)
 
const me & operator[] (const std::string &name) const BY_CONST_FUNC(operator[](name))
 
me & operator[] (const std::string *it)
 
const me & operator[] (const std::string *it) const BY_CONST_FUNC(operator[](it))
 
me & operator[] (const nchar *name)
 
const me & operator[] (const nchar *name) const BY_CONST_FUNC(operator[](name))
 
nbool in (const node &elem) const
 
nbool in (const node *elem) const
 
const scopesubs () const BY_CONST_FUNC(subs()) virtual tstr< nbicontainer > mySubs() const
 Returns a tstr to a container of immediate sub-nodes (excluding inherited or chained ones).
 
const nodepromote (const node &it) const
 
const nodepromote (const node *it) const BY_SIDE_FUNC(promote)
 
template<typename T >
T * sub (std::function< nbool(const std::string &, const T &)> l)
 
template<typename T >
const T * sub (std::function< nbool(const std::string &, const T &)> l) const BY_CONST_FUNC(sub< T >(l)) template< typename T
 
template<typename T = me>
const T * sub () const BY_CONST_FUNC(sub< T >()) template< typename T
 
template<typename T = me>
T * sub (const std::string *it) BY_SIDE_FUNC(sub)
 
template<typename T = me>
const T * sub (const std::string &name) const BY_CONST_FUNC(sub< T >(name)) template< typename T
 
template<typename T = me>
T * sub (const std::string *name, const args &a) BY_SIDE_FUNC(name
 
template<typename T = me>
const T * sub (const std::string &name, const args &a) const BY_CONST_FUNC(sub< T >(name
 
template<typename T = me>
const T a const T * sub (const std::string *name, const args &a) const BY_CONST_FUNC(sub< T >(name
 
template<typename T >
const T a const T a tnarr< T, strTactic > subAll (std::function< nbool(const std::string &, const T &)> l) const
 
template<typename T = me>
tnarr< T, strTactic > subAll () const
 
template<typename T = me>
tpriorities< T > subAll (const std::string &name) const
 
template<typename T = me>
tpriorities< T > subAll (const std::string *it) const BY_SIDE_FUNC(subAll< T >) template< typename T
 
template<typename T = me>
tpriorities< T > subAll (const std::string &name, const args &a) const
 
template<typename T = me>
tpriorities< T > subAll (const std::string *name, const args *a) const BY_SIDE_FUNC(name
 
tpriorities< T > subAll< T > tpriorities ())
 
template<typename T = me>
tpriorities< T > subAll (const std::string *name, const args &a) const BY_SIDE_FUNC(name
 
tpriorities< T > subAll< T > tpriorities ())
 
bool canEval (const args &a) const
 
priorType prioritize (const args *it) const BY_SIDE_FUNC(it
 
str eval (const args *it) BY_SIDE_FUNC(eval)
 
str eval (const std::string &name, const args &a)
 
str eval (const std::string &name, const args *a) BY_SIDE_FUNC(a
 
str eval (name, a)
 
str str ())
 
str eval (const std::string *name, const args &a) BY_SIDE_FUNC(name
 
str eval str ())
 
str eval (const std::string *name, const args *a) BY_SIDE_FUNC(name &&a
 
str eval str ())
 
str eval (const std::string &name)
 
str eval (const std::string *it) BY_SIDE_FUNC(eval)
 
str eval ()
 
virtual void rel ()
 
template<typename T >
nbool is () const
 
nbool is (const typeProvidable &to) const
 
nbool is (const typeProvidable *it) const BY_SIDE_FUNC(is)
 
nbool is (const type &to) const
 
nbool is (const type *it) const BY_SIDE_FUNC(is)
 
template<typename T >
tstr< T > as () const
 
str as (const typeProvidable &to) const
 
str as (const typeProvidable *it) const BY_SIDE_FUNC(as)
 
str as (const type &to) const
 
str as (const type *it) const BY_SIDE_FUNC(as)
 
template<typename T >
nbool isImpli () const
 
nbool isImpli (const typeProvidable &to) const
 
nbool isImpli (const typeProvidable *it) const BY_SIDE_FUNC(isImpli)
 
template<typename T >
tstr< T > asImpli () const
 
virtual str asImpli (const type &to) const
 
str asImpli (const typeProvidable &to) const
 
str asImpli (const typeProvidable *it) const BY_SIDE_FUNC(asImpli)
 
virtual nbool isComplete () const
 
virtual void accept (const visitInfo &i, visitor &v)
 
void inFrame (const bicontainable *args) const override
 
void outFrame () const override
 
virtual const modifiergetModifier () const
 
virtual void inFrame (const bicontainable *args) const=0
 
void inFrame () const
 
virtual void outFrame () const=0
 
- by::frameInteractable(으)로부터 상속된 Public 멤버 함수
void inFrame () const
 

Protected 멤버 함수

str _onMakeNew () override
 
- by::node(으)로부터 상속된 Protected 멤버 함수
virtual str _onEvalSub (node &sub, const args &a)
 Protected virtual method for evaluating a sub-node.
 
void _setSrc (const src *it) BY_SIDE_FUNC(_setSrc)
 

추가로 상속된 멤버들

- by::node(으)로부터 상속된 Public 속성
T sub name
 
T sub nullptr
 
tpriorities< T > subAll< T > name
 
priorType prioritize it
 
priorType prioritize NO_MATCH
 
str eval name
 
- by::expr(으)로부터 상속된 Protected 속성
tstr< src_src
 
point _pos
 

상세한 설명

Variable definition with assignment expression

Represents variable declarations with initial value assignment. Handles variable creation, type specification, and value initialization.

멤버 함수 문서화

◆ _onMakeNew()

str by::defAssignExpr::_onMakeNew ( )
overrideprotectedvirtual

by::defVarExpr를 구현.

◆ infer()

str by::defAssignExpr::infer ( ) const
overridevirtual

getType() returns what it is. opposite to it, this returns what this class will represents after evaluation.

for example, the expr class has derived from this node class. and if an user call the funcs to get type of it, class 'ntype' of 'expr' will be returned. but if that user call the 'infer()' then the 'expr' object evaluate its terms and returns it as a node from the output. it could be an integer if it was addExpr and all terms are constructed with integers.

and also this func requires frames. means that you have to interact frame first before call this func.

Remarks
some derived class of node may require to call this function first by verifier. if you call this function without calling verifier previously will damage then process.

by::node(으)로부터 재구현되었습니다.

◆ setExplicitType()

void by::defAssignExpr::setExplicitType ( const node & newType)

Sets the explicitly declared type for the variable being defined.

매개변수
newTypeThe node representing the explicit type.

이 클래스에 대한 문서화 페이지는 다음의 파일로부터 생성되었습니다.:
to Top