public static PValue RunStatically(PValue arg0, StackContext sctx) { var x = (double) arg0.ConvertTo(sctx, PType.Real, true).Value; return System.Math.Tan(x); }
public static PValue RunStatically(PValue arg, StackContext sctx) { if (sctx == null) throw new ArgumentNullException("sctx"); if (arg == null) throw new ArgumentNullException("arg"); if (arg.Type == PType.Int) { var x = (int) arg.Value; return System.Math.Abs(x); } else { var x = (double) arg.ConvertTo(sctx, PType.Real, true).Value; return System.Math.Abs(x); } }
private static EntityRef _getMacroRef(StackContext sctx, PValue rawMacro) { PFunction func; MacroCommand mcmd; if (rawMacro.TryConvertTo(sctx, out func)) return EntityRef.Function.Create(func.Id, func.ParentApplication.Module.Name); else if (rawMacro.TryConvertTo(sctx, out mcmd)) return EntityRef.MacroCommand.Create(mcmd.Id); else return rawMacro.ConvertTo<EntityRef>(sctx); }
public static PValue RunStatically(PValue arg0, PValue arg1, StackContext sctx) { if (arg0.Type == PType.Int && arg1.Type == PType.Int) { var a = (int) arg0.Value; var b = (int) arg1.Value; return System.Math.Max(a, b); } else { var a = (double) arg0.ConvertTo(sctx, PType.Real, true).Value; var b = (double) arg1.ConvertTo(sctx, PType.Real, true).Value; return System.Math.Max(a, b); } }
public static PValue RunStatically(PValue arg0, PValue arg1, StackContext sctx) { var x = (double) arg0.ConvertTo(sctx, PType.Real, true).Value; int d; PValue pd; if (arg1 != null && arg1.TryConvertTo(sctx, PType.Int, true, out pd)) d = System.Math.Abs((int) pd.Value); else d = 0; return System.Math.Round(x, d, MidpointRounding.AwayFromZero); }