Пример #1
0
Variant Object::o_argval(bool byRef, CStrRef propName,
                         bool error /* = true */, CStrRef context /* = null_string */) {
    if (!byRef) {
        return o_get(propName, error, context);
    } else {
        return strongBind(o_lval(propName, context));
    }
}
Пример #2
0
void EvalObjectData::o_setArray(CArrRef props) {
    for (ArrayIter it(props); !it.end(); it.next()) {
        String k = it.first();
        if (!k.empty() && k.charAt(0) == '\0') {
            int subLen = k.find('\0', 1) + 1;
            String cls = k.substr(1, subLen - 2);
            String key = k.substr(subLen);
            if (cls == "*") cls = o_getClassName();
            props->load(k, o_lval(key, Variant(), cls));
        }
    }
    DynamicObjectData::o_setArray(props);
}
Пример #3
0
obj *
_fib_1 (obj * n)
{
  st *_ctx = NULL;
  store (&_ctx, 4, 2, n);
  if (o_lval (8, o_op (5, LE, retrieve (&_ctx, 5, 2), o_int (5, 1))))
    {
      return o_return (&_ctx, retrieve (&_ctx, 6, 2));
    }

  return o_return (&_ctx,
		   o_op (8, ADD,
			 _fib_1 (o_op
				 (8, SUB, retrieve (&_ctx, 8, 2),
				  o_int (8, 1))), _fib_1 (o_op (8, SUB,
								retrieve
								(&_ctx, 8, 2),
								o_int (8,
								       2)))));

  return o_return (&_ctx, o_int (0, 0));
}
Пример #4
0
int
_ep ()
{
  obj *o = _main_1 ();
  return o_lval (0, o);
}