CLRX  1
An unofficial OpenCL extensions designed for Radeon GPUs
Classes | Public Member Functions | List of all members
CLRX::AsmMacro Class Reference

assembler macro More...

#include <AsmSource.h>

Inheritance diagram for CLRX::AsmMacro:
CLRX::FastRefCountable CLRX::NonCopyableAndNonMovable

Classes

struct  SourceTrans
 source translation More...
 

Public Member Functions

 AsmMacro (const AsmSourcePos &pos, const Array< AsmMacroArg > &args)
 constructor
 
 AsmMacro (const AsmSourcePos &pos, Array< AsmMacroArg > &&args)
 constructor with rlvalue for arguments
 
void addLine (RefPtr< const AsmMacroSubst > macro, RefPtr< const AsmSource > source, const std::vector< LineTrans > &colTrans, size_t lineSize, const char *line)
 adds line to macro from source More...
 
const std::vector< LineTrans > & getColTranslations () const
 get column translations
 
const std::vector< char > & getContent () const
 get content vector
 
size_t getSourceTransSize () const
 get source translations size
 
const SourceTransgetSourceTrans (uint64_t index) const
 get source translations
 
const AsmSourcePosgetSourcePos () const
 get source position
 
const size_t getArgsNum () const
 get number of arguments
 
const AsmMacroArggetArg (size_t i) const
 get argument
 
- Public Member Functions inherited from CLRX::FastRefCountable
 FastRefCountable ()
 constructor
 
void reference () const
 reference object
 
bool unreference () const
 unreference object (returns true if no reference count)
 
- 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
 

Detailed Description

assembler macro

Member Function Documentation

void CLRX::AsmMacro::addLine ( RefPtr< const AsmMacroSubst macro,
RefPtr< const AsmSource source,
const std::vector< LineTrans > &  colTrans,
size_t  lineSize,
const char *  line 
)

adds line to macro from source

Parameters
macromacro substitution
sourcesource of line
colTranscolumn translations (for backslashes)
lineSizeline size
lineline text (can be with newline character)

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