170 void While ( Bool v );
234 void For ( VInt& variable, Int begin, Int end, Int step = 1 );
237 void For ( VUInt& variable, UInt begin, UInt end, UInt step = 1 );
266 void Case (
int value );
289 template<
class ReturnType,
typename... Args >
292 Function (
const char* pName =
"unnamedFunction" );
294 ReturnType operator()(
typename Args::rvalue_type ... args );
297 template<
class ParamType >
302 inline operator rvalue_type()
const 304 ParamType par ( d_variableId );
305 return rvalue_type ( par );
308 template<
typename IndexT >
309 inline auto operator[](
const IndexT& idx )
const 311 const rvalue_type rValue = *
this;
312 return rValue [ idx ];
315 inline int size()
const 317 const rvalue_type rValue = *
this;
318 return rValue.size();
321 inline int Size()
const 323 const rvalue_type rValue = *
this;
324 return rValue.Size();
327 VPP_DEFINE_PARAM_OPERATORS
338 template<
typename ValueT >
339 void Return (
const ValueT& value );
366 template<
class CondT,
class Arg1T,
class Arg2T >
367 auto Select (
const CondT& cond,
const Arg1T& argIfTrue,
const Arg2T& argIfFalse );
387 enum EMemorySemantics
409 EMemorySemantics msClass = MSM_WORKGROUP,
410 EMemorySemantics msSem = MSM_ACQREL );
416 EMemorySemantics msClass = MSM_CROSSWG,
417 EMemorySemantics msSem = MSM_ACQREL );
void Fi()
Creates the ending clause of the conditional construct.
void Do()
Creates the do clause of the loop construct.
The VPP namespace.
Definition: main.hpp:1
Definition: vppLangConstructs.hpp:290
void Rof()
Creates the closing clause of the 'for' loop construct.
void WorkgroupBarrier(EMemorySemantics msClass=MSM_WORKGROUP, EMemorySemantics msSem=MSM_ACQREL)
Creates control and memory barrier affecting threads in workgroup.
void Else()
Creates the else clause of the conditional construct.
void Switch(Int expr)
Creates the switch construct.
void EndSwitch()
Creates the closing clause of the switch construct.
void Default()
Creates the default clause of the switch construct.
void DeviceBarrier(EMemorySemantics msClass=MSM_CROSSWG, EMemorySemantics msSem=MSM_ACQREL)
Creates control and memory barrier affecting threads in all workgroups.
Definition: vppLangConstructs.hpp:298
void While(Bool v)
Creates the while clause of the loop construct.
void Shared()
Tags the next declared variable to be allocated in shared memory.
void Case(int value)
Creates the case clause of the switch construct.
void Break()
Creates the break clause of the switch construct.
auto Select(const CondT &cond, const Arg1T &argIfTrue, const Arg2T &argIfFalse)
A conditional expression.
void Od()
Creates the closing clause of the loop construct.
void Static()
Tags the next declared variable to be visible across functions.
void If(Bool v)
Creates the if clause of the conditional construct.
void For(VInt &variable, Int begin, Int end, Int step=1)
Creates the for clause of the 'for' loop construct.