|
|
| version 1.53.2.4, 2003/02/04 14:23:44 | version 1.53.2.8.2.1, 2003/03/18 15:14:13 |
|---|---|
| Line 16 static const char* IDENT_DOUBLE_C="$Date | Line 16 static const char* IDENT_DOUBLE_C="$Date |
| // externs | // externs |
| void _string_format(Request& r, StringPtr method_name, MethodParams& /*params*/); | void _string_format(Request& r, const String& method_name, MethodParams* /*params*/); |
| // class | // class |
| class MDouble : public Methoded { | class MDouble: public Methoded { |
| public: | public: |
| MDouble(); | MDouble(); |
| public: // Methoded | public: // Methoded |
| Line 29 public: // Methoded | Line 29 public: // Methoded |
| // global variable | // global variable |
| MethodedPtr double_class(new MDouble); | DECLARE_CLASS_VAR(double, new MDouble, 0); |
| // methods | // methods |
| static void _int(Request& r, StringPtr method_name, MethodParams& params) { | static void _int(Request& r, const String& method_name, MethodParams* params) { |
| // just checking (default) syntax validity, never really using it here, just for string.int compatibility | // just checking (default) syntax validity, never really using it here, just for string.int compatibility |
| if(params.count()>0) | if(params->count()>0) |
| params.as_junction(0, "default must be int"); | params->as_junction(0, "default must be int"); |
| VDouble& vdouble=*static_cast<VDouble *>(r.get_self().get()); | VDouble& vdouble=*static_cast<VDouble *>(r.get_self().get()); |
| r.write_no_lang(ValuePtr(new VInt(vdouble.as_int()))); | r.write_no_lang(ValuePtr(new VInt(vdouble.as_int()))); |
| } | } |
| static void _double(Request& r, StringPtr method_name, MethodParams& params) { | static void _double(Request& r, const String& method_name, MethodParams* params) { |
| // just checking (default) syntax validity, never really using it here, just for string.doube compatibility | // just checking (default) syntax validity, never really using it here, just for string.doube compatibility |
| if(params.count()>0) | if(params->count()>0) |
| params.as_junction(0, "default must be double"); | params->as_junction(0, "default must be double"); |
| VDouble& vdouble=*static_cast<VDouble *>(r.get_self().get()); | VDouble& vdouble=*static_cast<VDouble *>(r.get_self().get()); |
| r.write_no_lang(ValuePtr(new VDouble(vdouble.as_double()))); | r.write_no_lang(ValuePtr(new VDouble(vdouble.as_double()))); |
| Line 59 static void __mul(VDouble& vdouble, doub | Line 59 static void __mul(VDouble& vdouble, doub |
| static void __div(VDouble& vdouble, double param) { vdouble.div(param); } | static void __div(VDouble& vdouble, double param) { vdouble.div(param); } |
| static void __mod(VDouble& vdouble, double param) { vdouble.mod((int)param); } | static void __mod(VDouble& vdouble, double param) { vdouble.mod((int)param); } |
| static void vdouble_op(Request& r, MethodParams& params, | static void vdouble_op(Request& r, MethodParams* params, |
| vdouble_op_func_ptr func) { | vdouble_op_func_ptr func) { |
| VDouble& vdouble=*static_cast<VDouble *>(r.get_self().get()); | VDouble& vdouble=*static_cast<VDouble *>(r.get_self().get()); |
| double param=params.count()? | double param=params->count()? |
| params.as_double(0, "param must be double", r):1/*used in inc/dec*/; | params->as_double(0, "param must be double", r):1/*used in inc/dec*/; |
| (*func)(vdouble, param); | (*func)(vdouble, param); |
| } | } |
| static void _inc(Request& r, StringPtr /*method_name*/, MethodParams& params) { vdouble_op(r, params, &__inc); } | static void _inc(Request& r, const String& /*method_name*/, MethodParams* params) { vdouble_op(r, params, &__inc); } |
| static void _dec(Request& r, StringPtr /*method_name*/, MethodParams& params) { vdouble_op(r, params, &__dec); } | static void _dec(Request& r, const String& /*method_name*/, MethodParams* params) { vdouble_op(r, params, &__dec); } |
| static void _mul(Request& r, StringPtr /*method_name*/, MethodParams& params) { vdouble_op(r, params, &__mul); } | static void _mul(Request& r, const String& /*method_name*/, MethodParams* params) { vdouble_op(r, params, &__mul); } |
| static void _div(Request& r, StringPtr /*method_name*/, MethodParams& params) { vdouble_op(r, params, &__div); } | static void _div(Request& r, const String& /*method_name*/, MethodParams* params) { vdouble_op(r, params, &__div); } |
| static void _mod(Request& r, StringPtr /*method_name*/, MethodParams& params) { vdouble_op(r, params, &__mod); } | static void _mod(Request& r, const String& /*method_name*/, MethodParams* params) { vdouble_op(r, params, &__mod); } |
| // from string.C | // from string.C |
| extern | extern |
| StringPtr sql_result_string(Request& r, StringPtr method_name, MethodParams& params, | const String& sql_result_string(Request& r, const String& method_name, MethodParams* params, |
| HashStringValuePtr& options, ValuePtr& default_code); | HashStringValue*& options, ValuePtr& default_code); |
| static void _sql(Request& r, StringPtr method_name, MethodParams& params) { | static void _sql(Request& r, const String& method_name, MethodParams* params) { |
| double val; | double val; |
| HashStringValuePtr options; | HashStringValue* options; |
| ValuePtr default_code; | ValuePtr default_code; |
| if(StringPtr string=sql_result_string(r, method_name, params, options, default_code)) | if(const String& string=sql_result_string(r, method_name, params, options, default_code)) |
| val=string->as_double(); | val=string->as_double(); |
| else | else |
| if(default_code) | if(default_code) |