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

Factory for creating expressions with source location information 더 자세히 ...

#include <exprMaker.hpp>

by::exprMaker에 대한 상속 다이어그램 :

Public 멤버 함수

 exprMaker (const srcFile &s, ncnt row, ncnt col)
 
me & addRow ()
 
me & addRow (ncnt step)
 
me & addCol ()
 
me & addCol (ncnt step)
 
me & setRow (ncnt row)
 
me & setCol (ncnt col)
 
me & setSrcFile (const srcFile &s)
 
void rel ()
 
const pointgetPos () const
 
const srcFilegetSrcFile () const
 
tstr< srcmakeSrc (const std::string &name) const
 
template<typename T , typename... Args>
T * birth (const std::string &name, const Args &... args) const
 
template<typename T , typename... Args>
T * make (const Args &... args) const
 Creates a new expression object without a specific name and sets its source location.
 
funcmakeExpandFunc (const defBlock &blk) const
 Creates a function specifically for handling "expand" logic within definition blocks.
 
assignExprmakeAssignExprFrom (const defVarExpr &e) const
 Creates an assignment expression from a variable definition expression.
 
funcmakeCommonFunc (const defBlock &blk) const
 Creates a "common" function associated with a definition block.
 

상세한 설명

Factory for creating expressions with source location information

Creates expression objects with proper source file and position metadata. Used by parser to track source locations for debugging and error reporting.

멤버 함수 문서화

◆ birth()

template<typename T , typename... Args>
T * by::exprMaker::birth ( const std::string & name,
const Args &... args ) const
inline
주의
when you birth your child, you must name it.

◆ make()

template<typename T , typename... Args>
T * by::exprMaker::make ( const Args &... args) const
inline

Creates a new expression object without a specific name and sets its source location.

템플릿 파라메터
TThe type of the expression to create.
ArgsThe types of the constructor arguments for T.
매개변수
argsThe constructor arguments for T.
반환값
A pointer to the newly created expression object.

◆ makeAssignExprFrom()

assignExpr * by::exprMaker::makeAssignExprFrom ( const defVarExpr & e) const

Creates an assignment expression from a variable definition expression.

매개변수
eThe variable definition expression (defVarExpr) to derive the assignment from.
반환값
A pointer to the newly created assignExpr object.

◆ makeCommonFunc()

func * by::exprMaker::makeCommonFunc ( const defBlock & blk) const

Creates a "common" function associated with a definition block.

매개변수
blkThe definition block for which the common function is being created.
반환값
A pointer to the newly created func object.

◆ makeExpandFunc()

func * by::exprMaker::makeExpandFunc ( const defBlock & blk) const

Creates a function specifically for handling "expand" logic within definition blocks.

매개변수
blkThe definition block associated with the expand function.
반환값
A pointer to the newly created func object.

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