176 ,
ArgsEnd ( scope.Stack->end() )
242 return *(
ArgsBegin +
static_cast<ptrdiff_t
>( no ) );
276 String& op ,
bool argIsConst )
345 String& op,
bool lhsIsConst,
bool rhsIsConst)
447 String& op,
bool isConst,
bool rhsIsConst )
582 { (void) ciAutoCast;
return false; }
Plugin(PrioritiesType pPriority)
Box(*)(Scope &scope, ArgIterator argsBegin, ArgIterator argsEnd) CallbackDecl
StdVectorMono< Box >::iterator ArgIterator
strings::TAString< character, lang::HeapAllocator > AString
Type alias in namespace alib.
strings::TString< nchar > NString
Type alias in namespace alib.
monomem::TMonoAllocator< lang::HeapAllocator > MonoAllocator
expressions::CompilerPlugin CompilerPlugin
Type alias in namespace alib.
characters::nchar nchar
Type alias in namespace alib.
boxing::Box Box
Type alias in namespace alib.
strings::TString< character > String
Type alias in namespace alib.
containers::List< TAllocator, T, TRecycling > List
Type alias in namespace alib.
bool RhsIsConst
Input: denotes if rhs argument is constant value.
String ReverseCastFunctionNameRhs
String ReverseCastFunctionName
const nchar * DbgCallbackNameRhs
CIAutoCast(Scope &scope, MonoAllocator &compileTimeAllocator, String &op, bool isConst, bool rhsIsConst)
CIBinaryOp(Scope &scope, MonoAllocator &compileTimeAllocator, String &op, bool lhsIsConst, bool rhsIsConst)
bool LhsIsConst
Input: Denotes if the lhs-argument is a constant value.
bool NonConstArgIsResult
Output: Used with optimization, see this struct's documentation for more information.
bool RhsIsConst
Input: Denotes if the rhs-argument is a constant value.
String & Operator
Input/Output: The binary operator symbol.
AString & Name
Input: The identifier name to search.
List< MonoAllocator, String > & FunctionsWithNonMatchingArguments
void AddFunctionsWithNonMatchingArguments(const String &signature)
CIFunction(Scope &scope, MonoAllocator &compileTimeAllocator, AString &name, bool isIdentifier, bool argsAreConst, List< MonoAllocator, String > &hints)
CIUnaryOp(Scope &scope, MonoAllocator &compileTimeAllocator, String &op, bool argIsConst)
String & Operator
Input/Output: The unary operator.
const nchar * DbgCallbackName
CompilationInfo(Scope &scope, MonoAllocator &allocator)
CallbackDecl Callback
Output: The native C++ callback function to be set by one of the plug-ins.
MonoAllocator & CompileTimeAllocator
virtual bool TryCompilation(CIUnaryOp &ciUnaryOp)
virtual bool TryCompilation(CIFunction &ciFunction)
Compiler & Cmplr
The compiler that this plug-in is attached to.
CompilerPlugin(const NString &name, Compiler &compiler, CompilePriorities pPriority)
virtual bool TryCompilation(CIBinaryOp &ciBinaryOp)
virtual ~CompilerPlugin()
Virtual destructor.
virtual bool TryCompilation(CIAutoCast &ciAutoCast)