|
FAUST compiler
0.9.9.6b8
|


Public Member Functions | |
| SqrtPrim () | |
| virtual unsigned int | arity () |
| virtual bool | needCache () |
| virtual Type | infereSigType (const vector< Type > &args) |
| virtual void | sigVisit (Tree sig, sigvisitor *visitor) |
| virtual int | infereSigOrder (const vector< int > &args) |
| virtual Tree | computeSigOutput (const vector< Tree > &args) |
| virtual string | generateCode (Klass *klass, const vector< string > &args, const vector< Type > &types) |
| virtual string | generateLateq (Lateq *lateq, const vector< string > &args, const vector< Type > &types) |
Definition at line 8 of file sqrtprim.cpp.
| SqrtPrim::SqrtPrim | ( | ) | [inline] |
Definition at line 13 of file sqrtprim.cpp.
: xtended("sqrt") {}
| virtual unsigned int SqrtPrim::arity | ( | ) | [inline, virtual] |
Implements xtended.
Definition at line 15 of file sqrtprim.cpp.
Referenced by generateCode(), and generateLateq().
{ return 1; }

| virtual Tree SqrtPrim::computeSigOutput | ( | const vector< Tree > & | args | ) | [inline, virtual] |
| virtual string SqrtPrim::generateCode | ( | Klass * | klass, |
| const vector< string > & | args, | ||
| const vector< Type > & | types | ||
| ) | [inline, virtual] |
| virtual string SqrtPrim::generateLateq | ( | Lateq * | lateq, |
| const vector< string > & | args, | ||
| const vector< Type > & | types | ||
| ) | [inline, virtual] |
| virtual int SqrtPrim::infereSigOrder | ( | const vector< int > & | args | ) | [inline, virtual] |
| virtual Type SqrtPrim::infereSigType | ( | const vector< Type > & | args | ) | [inline, virtual] |
Implements xtended.
Definition at line 19 of file sqrtprim.cpp.
References castInterval(), floatCast(), interval::hi, interval::lo, and interval::valid.
{
assert (args.size() == 1);
Type t = args[0];
interval i = t->getInterval();
if (i.valid && i.lo >=0) {
return castInterval(floatCast(t), interval(sqrt(i.lo), sqrt(i.hi)));
} else {
return castInterval(floatCast(t), interval());
}
}

| virtual bool SqrtPrim::needCache | ( | ) | [inline, virtual] |
| virtual void SqrtPrim::sigVisit | ( | Tree | sig, |
| sigvisitor * | visitor | ||
| ) | [inline, virtual] |
Definition at line 31 of file sqrtprim.cpp.
{}
1.8.0