Beispiel #1
0
SCM TTY::New(SCM fd, SCM readable){
  CheckArgType(fd, scm_integer_p, "tty-new", 1);
  CheckArgType(readable, scm_integer_p, "tty-new", 2);
  TTY * t = new TTY(scm_to_int(fd), scm_to_int(readable));
  assert(t!=NULL);
  return t->smob;
}
Beispiel #2
0
SCM Event::Run(SCM e, SCM args){
  CheckArgType(e, scm_string_p, "event-run", 1);
  CheckArgType(args, scm_list_p, "event-run", 2);
  string ev = scm_to_locale_string(e);
  events_g->Run(ev, args);
  return e;
}
Beispiel #3
0
SCM Event::On(SCM e, SCM cb){
  CheckArgType(e, scm_string_p, "event-on", 1);
  CheckArgType(cb, scm_procedure_p, "event-on", 2);
  string ev = scm_to_locale_string(e);
  events_g->On(ev, cb);
  return e;
}
Beispiel #4
0
bool
xplayerNPObject::CheckArgv (const NPVariant* argv,
                          uint32_t argc,
                          uint32_t expectedArgc,
                          ...)
{
  if (!CheckArgc (argc, expectedArgc, expectedArgc))
    return false;

  va_list type_args;
  va_start (type_args, expectedArgc);

  for (uint32_t i = 0; i < argc; ++i) {
    NPVariantType type = NPVariantType (va_arg (type_args, int /* promotion */));

    if (!CheckArgType (argv[i].type, type)) {
      va_end (type_args);
      return false;
    }
  }

  va_end (type_args);

  return true;
}
Beispiel #5
0
SCM TTY::SetMode(SCM id, SCM mode){
  assert_object_type(id);
  CheckArgType(mode, scm_integer_p, "tty-set-mode", 2);
  TTY * t = (TTY *)get_object(id);
  assert(t!=NULL);
  int r = uv_tty_set_mode(GetHandle(t), scm_to_int(mode));
  if(r) Logger::Err("uv_tty_set_mode failed! : %d", r);
  return id;
}
Beispiel #6
0
bool
xplayerNPObject::CheckArg (const NPVariant *argv,
                         uint32_t argc,
                         uint32_t argNum,
                         NPVariantType type)
{
  if (!CheckArgc (argc, argNum + 1))
    return false;

  return CheckArgType (argv[argNum].type, type, argNum);
}
Beispiel #7
0
SCM Event::Remove(SCM e){
  CheckArgType(e, scm_string_p, "event-remove", 1);
  string ev = scm_to_locale_string(e);
  events_g->Remove(ev);
  return e;
}