Exemplo n.º 1
0
inline void doDispatch(
    const PVal &val1, const PVal &val2,
    const PVal &self, const PMaybe &lib, PMaybe &tunnel
) {
    PMaybe vlib1(nullptr);
    PMaybe vlib2(nullptr);
    PMaybe func(nullptr);

    libGet<id_dispatch>(val1,   lib, vlib1);
    libGet<id_dispatch>(val2, vlib1, vlib2);

    libGet(self, vlib2, func);
    func.call(_pair(_quote(val1), _quote(val2), self->getType()), lib, tunnel);
}
Exemplo n.º 2
0
inline void doCast(const PMaybe &lib, PMaybe &val) {
    PMaybe func(nullptr);

    libGet<id_cast, type>(PVal(val), lib, func);

    PMaybe caller(_ptr(_quote(PVal(val)), val->getType())); // TODO simplify
    val = nullptr;

    func.call<true>(caller, lib, val);
}
Exemplo n.º 3
0
String VB::__addText(Const String& text)
{
  return String("fpStringBuilder.Append(\"") & _quote(text,quotedParam_) & "\")\n";
}
Exemplo n.º 4
0
String CSharp::__addText(Const String& text)
{
  return String("fpText+=\"") & _quote(text) & "\";\n";
}