CeresEngine 0.2.0
A game development framework
Loading...
Searching...
No Matches
CeresEngine::ShaderCompiler::SourceCode Class Reference

#include <CeresEngine/Material/ShaderCompiler/SourceCode.hpp>

Public Member Functions

 SourceCode (const SPtr< std::istream > &stream)
 
bool isValid () const
 
char next ()
 
bool fetchLineMarker (const SourceArea &area, String &line, String &marker)
 
void nextSourceOrigin (const String &filename, Int32 lineOffset)
 
void ignore ()
 
const SourcePositiongetPosition () const
 
const StringgetLine () const
 
String getFilename () const
 

Protected Member Functions

 SourceCode ()=default
 
String getLine (std::size_t lineIndex) const
 

Protected Attributes

SPtr< std::istream > mStream
 
String mCurrentLine
 
Vector< StringmLines
 
SourcePosition mPosition
 

Constructor & Destructor Documentation

◆ SourceCode() [1/2]

CeresEngine::ShaderCompiler::SourceCode::SourceCode ( )
protecteddefault

◆ SourceCode() [2/2]

CeresEngine::ShaderCompiler::SourceCode::SourceCode ( const SPtr< std::istream > &  stream)

Member Function Documentation

◆ fetchLineMarker()

bool CeresEngine::ShaderCompiler::SourceCode::fetchLineMarker ( const SourceArea area,
String line,
String marker 
)

◆ getFilename()

String CeresEngine::ShaderCompiler::SourceCode::getFilename ( ) const

◆ getLine() [1/2]

const String & CeresEngine::ShaderCompiler::SourceCode::getLine ( ) const
inline

◆ getLine() [2/2]

String CeresEngine::ShaderCompiler::SourceCode::getLine ( std::size_t  lineIndex) const
protected

◆ getPosition()

const SourcePosition & CeresEngine::ShaderCompiler::SourceCode::getPosition ( ) const
inline

◆ ignore()

void CeresEngine::ShaderCompiler::SourceCode::ignore ( )
inline

◆ isValid()

bool CeresEngine::ShaderCompiler::SourceCode::isValid ( ) const

◆ next()

char CeresEngine::ShaderCompiler::SourceCode::next ( )

◆ nextSourceOrigin()

void CeresEngine::ShaderCompiler::SourceCode::nextSourceOrigin ( const String filename,
Int32  lineOffset 
)

Member Data Documentation

◆ mCurrentLine

String CeresEngine::ShaderCompiler::SourceCode::mCurrentLine
protected

◆ mLines

Vector<String> CeresEngine::ShaderCompiler::SourceCode::mLines
protected

◆ mPosition

SourcePosition CeresEngine::ShaderCompiler::SourceCode::mPosition
protected

◆ mStream

SPtr<std::istream> CeresEngine::ShaderCompiler::SourceCode::mStream
protected

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