CLRX  1
An unofficial OpenCL extensions designed for Radeon GPUs
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
CLRX::AsmInputFilter Class Referenceabstract

assembler input filter for reading lines More...

#include <AsmSource.h>

Inheritance diagram for CLRX::AsmInputFilter:
CLRX::NonCopyableAndNonMovable CLRX::AsmIRPInputFilter CLRX::AsmMacroInputFilter CLRX::AsmRepeatInputFilter CLRX::AsmStreamInputFilter

Public Member Functions

virtual ~AsmInputFilter ()
 destructor
 
virtual const char * readLine (Assembler &assembler, size_t &lineSize)=0
 read line and returns line except newline character
 
LineNo getLineNo () const
 get current line number after reading line
 
LineCol translatePos (size_t position) const
 translate position to line number and column number More...
 
const std::vector< LineTransgetColTranslations () const
 returns column translations after reading line
 
RefPtr< const AsmSourcegetSource () const
 get current source after reading line
 
RefPtr< const AsmMacroSubstgetMacroSubst () const
 get current macro substitution after reading line
 
AsmSourcePos getSourcePos (size_t position) const
 get source position after reading line
 
AsmInputFilterType getType () const
 get input filter type
 
- Public Member Functions inherited from CLRX::NonCopyableAndNonMovable
 NonCopyableAndNonMovable ()
 constructor
 
 NonCopyableAndNonMovable (const NonCopyableAndNonMovable &)=delete
 copy-constructor
 
 NonCopyableAndNonMovable (NonCopyableAndNonMovable &&)=delete
 move-constructor
 
NonCopyableAndNonMovableoperator= (const NonCopyableAndNonMovable &)=delete
 copy-assignment
 
NonCopyableAndNonMovableoperator= (NonCopyableAndNonMovable &&)=delete
 move-asignment
 

Protected Member Functions

 AsmInputFilter (AsmInputFilterType _type)
 empty constructor
 
 AsmInputFilter (RefPtr< const AsmMacroSubst > _macroSubst, RefPtr< const AsmSource > _source, AsmInputFilterType _type)
 constructor with macro substitution and source
 

Protected Attributes

AsmInputFilterType type
 input filter type
 
size_t pos
 position in content
 
RefPtr< const AsmMacroSubstmacroSubst
 current macro substitution
 
RefPtr< const AsmSourcesource
 current source
 
std::vector< char > buffer
 buffer of line (can be not used)
 
std::vector< LineTranscolTranslations
 column translations
 
LineNo lineNo
 current line number
 

Detailed Description

assembler input filter for reading lines

Member Function Documentation

LineCol CLRX::AsmInputFilter::translatePos ( size_t  position) const

translate position to line number and column number

Parameters
positionposition in line (from zero)
Returns
line and column

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