Example #1
0
VALUE *rd_define_class(const char *name, VALUE *super) {
  if(rd_find_constant(name)) {
    puts("Redefinition of class `%s' not allowed\n");
    exit(1);
  }

  VALUE *val = new VALUE();

  // Special base Class case. Super is self
  if(super == NULL) {
    val->super = val;
  }

  val->type = T_CLASS;
  val->name = name;

  val->define_method("new", return_new_value);
  val->define_method("to_s", default_to_s);

  ADD_CONST(val);

  return val;
}
Example #2
0
PyMODINIT_FUNC initpxpcap (void)
{
  PyObject * m = Py_InitModule("pxpcap", pxpcapmethods);

  //TODO: merge with similar list above
  ADD_CONST(DLT_NULL);
  ADD_CONST(DLT_EN10MB);
  ADD_CONST(DLT_IEEE802);
  ADD_CONST(DLT_ARCNET);
  ADD_CONST(DLT_SLIP);
  ADD_CONST(DLT_PPP);
  ADD_CONST(DLT_FDDI);
  ADD_CONST(DLT_ATM_RFC1483);
  ADD_CONST(DLT_RAW);
  ADD_CONST(DLT_PPP_SERIAL);
  ADD_CONST(DLT_PPP_ETHER);
  ADD_CONST(DLT_C_HDLC);
  ADD_CONST(DLT_IEEE802_11);
  ADD_CONST(DLT_FRELAY);
  ADD_CONST(DLT_LOOP);
  ADD_CONST(DLT_LINUX_SLL);
  ADD_CONST(DLT_LTALK);
  ADD_CONST(DLT_PFLOG);
  ADD_CONST(DLT_PRISM_HEADER);
  ADD_CONST(DLT_IP_OVER_FC);
  ADD_CONST(DLT_SUNATM);
  ADD_CONST(DLT_IEEE802_11_RADIO);
  ADD_CONST(DLT_ARCNET_LINUX);
  ADD_CONST(DLT_LINUX_IRDA);
  ADD_CONST(DLT_LINUX_LAPD);
}