예제 #1
0
파일: fib-0.6.c 프로젝트: geraldstanje/jtc
obj *
_main_1 ()
{
  st *_ctx = NULL;
  println (1, _fib_1 (o_int (11, 10)));
  return o_return (&_ctx, o_int (12, 0));

  return o_return (&_ctx, o_int (0, 0));
}
static void char_at_perform(void *obj, const char *string, void *idata)
{
    char_at_struct *c = obj;
    size_t str_len = strlen(string);
    if (c->pos < str_len && c->pos >= 0) {
        o_int(c->out, c->character = string[c->pos]);
    } else if (c->pos < 0 && c->pos >= -str_len) {
        o_int(c->out, c->character = string[str_len - c->pos]);
    }
}
예제 #3
0
파일: fib-0.6.c 프로젝트: geraldstanje/jtc
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));
}
static void strlen_perform(void *obj, const char*str, void *idata)
{
    strlen_struct *op = obj;
    op->len = strlen(str);
    o_int(op->out, op->len);
}