/*-------------------------------------------------------------------------* * ARG_INTEGER * * * *-------------------------------------------------------------------------*/ static long Arg_Integer(WamWord **lst_adr) { WamWord word; word = Read_Arg(lst_adr); Pl_Math_Load_Value(word, &word); return Pl_Rd_Integer_Check(word); }
/*-------------------------------------------------------------------------* * ARG_FLOAT * * * *-------------------------------------------------------------------------*/ static double Arg_Float(WamWord **lst_adr) { WamWord word; word = Read_Arg(lst_adr); Pl_Math_Load_Value(word, &word); return Pl_Rd_Number_Check(word); }
/*-------------------------------------------------------------------------* * PL_MATH_EVALUATE * * * * do not use directly Pl_Math_Load_Value because of FC (fast call) * *-------------------------------------------------------------------------*/ void Pl_Math_Evaluate(WamWord expr, WamWord *result) { Pl_Math_Load_Value(expr, result); }