gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[GNUnet-SVN] r780 - Extractor/src/main


From: grothoff
Subject: [GNUnet-SVN] r780 - Extractor/src/main
Date: Thu, 12 May 2005 15:31:13 -0700 (PDT)

Author: grothoff
Date: 2005-05-12 15:31:09 -0700 (Thu, 12 May 2005)
New Revision: 780

Removed:
   Extractor/src/main/libextractor_python.c
   Extractor/src/main/libextractor_python2.c
Log:
del

Deleted: Extractor/src/main/libextractor_python.c
===================================================================
--- Extractor/src/main/libextractor_python.c    2005-05-12 20:37:42 UTC (rev 
779)
+++ Extractor/src/main/libextractor_python.c    2005-05-12 22:31:09 UTC (rev 
780)
@@ -1,159 +0,0 @@
-/*
-     This file is part of libextractor.
-     (C) 2004, 2005 Vidyut Samanta and Christian Grothoff
-
-     libextractor is free software; you can redistribute it and/or modify
-     it under the terms of the GNU General Public License as published
-     by the Free Software Foundation; either version 2, or (at your
-     option) any later version.
-
-     libextractor is distributed in the hope that it will be useful, but
-     WITHOUT ANY WARRANTY; without even the implied warranty of
-     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-     General Public License for more details.
-
-     You should have received a copy of the GNU General Public License
-     along with libextractor; see the file COPYING.  If not, write to the
-     Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-     Boston, MA 02111-1307, USA.
- */
-
-#include <Python.h>
-#include "extractor.h"
-
-static PyObject * EXTRACTOR_PY_loadDefaultLibraries(PyObject * self,
-                                                   PyObject * args) {
-  return PyCObject_FromVoidPtr(EXTRACTOR_loadDefaultLibraries(), NULL);
-}
-
-static PyObject * EXTRACTOR_PY_removeAll(PyObject * self,
-                                        PyObject * args) {
-  PyObject * py_exts;
-
-  PyArg_ParseTuple(args, "O", &py_exts);
-
-  EXTRACTOR_removeAll((EXTRACTOR_ExtractorList*) PyCObject_AsVoidPtr(py_exts));
-  Py_INCREF(Py_None);
-  return Py_None;
-}
-
-static PyObject * EXTRACTOR_PY_load(PyObject * self,
-                                   PyObject * args) {
-  PyObject * py_exts;
-  char * name;
-  EXTRACTOR_ExtractorList * plugins;
-
-  PyArg_ParseTuple(args, 
-                  "Os", 
-                  &py_exts,
-                  &name);
-
-  plugins = 
-    EXTRACTOR_loadConfigLibraries((EXTRACTOR_ExtractorList*) 
PyCObject_AsVoidPtr(py_exts),
-                                 name);
-  return PyCObject_FromVoidPtr(plugins, NULL);
-}
-
-
-static PyObject * EXTRACTOR_PY_unload(PyObject * self,
-                                     PyObject * args) {
-  PyObject * py_exts;
-  char * name;
-  EXTRACTOR_ExtractorList * plugins;
-
-  PyArg_ParseTuple(args, 
-                  "Os", 
-                  &py_exts,
-                  &name);
-
-  plugins = 
-    EXTRACTOR_removeLibrary((EXTRACTOR_ExtractorList*) 
PyCObject_AsVoidPtr(py_exts),
-                           name);
-  return PyCObject_FromVoidPtr(plugins, NULL);
-}
-
-
-static PyObject * EXTRACTOR_PY_getKeywordTypeAsString(PyObject * self,
-                                                     PyObject * args) {
-  unsigned int type;
-
-  PyArg_ParseTuple(args,
-                  "i",
-                  &type);
-  return Py_BuildValue("s",
-                      
EXTRACTOR_getKeywordTypeAsString((EXTRACTOR_KeywordType)type));
-}
-
-static PyObject * EXTRACTOR_PY_extract(PyObject * self,
-                                      PyObject * args) {
-  PyObject * py_exts;
-  PyObject * py_clzz;
-  PyObject * py_elem;
-  char * filename;
-  EXTRACTOR_ExtractorList * ex;
-  EXTRACTOR_KeywordList * keys;
-  EXTRACTOR_KeywordList * pos;
-  PyObject * ret;
-
-  PyArg_ParseTuple(args, 
-                  "OsO", 
-                  &py_exts, 
-                  &filename,
-                  &py_clzz);
-  ex = PyCObject_AsVoidPtr(py_exts);
-
-  Py_BEGIN_ALLOW_THREADS;
-  keys = EXTRACTOR_getKeywords(ex,
-                              filename);
-  Py_END_ALLOW_THREADS;
-
-  ret = PyList_New(0);
-  pos = keys;
-  while (pos != NULL) {
-    py_elem = PyObject_Call(py_clzz, 
-                           Py_BuildValue("(OO)",
-                                         
PyInt_FromLong((long)pos->keywordType),
-                                         PyString_FromString(pos->keyword)),
-                            NULL);
-    PyList_Append(ret,
-                  py_elem);
-    Py_DECREF(py_elem);
-    pos = pos->next;
-  }
-  EXTRACTOR_freeKeywords(keys);
-  return ret;
-}
-
-static PyMethodDef ExtractorMethods[] = {
-  { "getKeywordTypeAsString", 
-    EXTRACTOR_PY_getKeywordTypeAsString,  
-    METH_VARARGS,
-    "convert a keyword type (int) to the string describing the type" },
-  { "loadDefaultLibraries", 
-    EXTRACTOR_PY_loadDefaultLibraries,  
-    METH_VARARGS,
-    "load the default set of libextractor plugins (returns the plugins)" },
-  { "removeAll", 
-    EXTRACTOR_PY_removeAll,  
-    METH_VARARGS,
-    "unload the given set of libextractor plugins (pass plugins as argument)" 
},
-  { "load", 
-    EXTRACTOR_PY_load,  
-    METH_VARARGS,
-    "load the given set of libextractor plugins (pass plugins names as 
argument)" },
-  { "unload", 
-    EXTRACTOR_PY_unload,  
-    METH_VARARGS,
-    "unload the given libextractor plugin (pass plugin name as argument)" },
-  { "extract", 
-    EXTRACTOR_PY_extract,  
-    METH_VARARGS,
-    "extract meta data from a file (pass plugins and filename as arguments, 
returns vector of meta-data)" },
-  { NULL, NULL, 0, NULL }
-};
-
-PyMODINIT_FUNC
-init_extractor() {
-  Py_InitModule("_extractor", ExtractorMethods);
-}
-

Deleted: Extractor/src/main/libextractor_python2.c
===================================================================
--- Extractor/src/main/libextractor_python2.c   2005-05-12 20:37:42 UTC (rev 
779)
+++ Extractor/src/main/libextractor_python2.c   2005-05-12 22:31:09 UTC (rev 
780)
@@ -1,569 +0,0 @@
-/* libextractor_python.c
-
-libextractor-Binding to Python. */
-
-#include <Python.h>
-#include "extractor.h"
-
-/* Typedefs. */
-
-typedef struct {
-  PyObject_HEAD
-  PyObject *moduleList;
-} Extractor;
-
-typedef struct {
-  PyObject_HEAD
-  EXTRACTOR_ExtractorList *module;
-} Module;
-
-typedef struct {
-  PyObject_HEAD
-  PyObject *keywordList;
-} KeywordList;
-
-typedef struct {
-  PyObject_HEAD
-  EXTRACTOR_KeywordList *keyword;
-} Keyword;
-
-/* Types. */
-
-static PyTypeObject ExtractorType;
-static PyTypeObject ModuleType;
-static PyTypeObject KeywordListType;
-static PyTypeObject KeywordType;
-
-/* Extractor type declarations. */
-
-static PyObject *Extractor_new(PyTypeObject *type, PyObject *args,
-                              PyObject *kwargs)
-{
-  Extractor *self = NULL;
-
-  if( !( self = (Extractor*)type->tp_alloc(type,0) ) )
-    goto error;
-  if( !( self->moduleList = PyList_New(0) ) )
-    goto error;
-
-  goto finish;
-
- error:
-  Py_XDECREF(self);
-  self = NULL;
-
- finish:
-  return (PyObject*)self;
-}
-
-static int Extractor_init(Extractor *self, PyObject *args, PyObject *kwargs)
-{
-  PyObject *conf = NULL, *conf_iter = NULL, *conf_item = NULL;
-  EXTRACTOR_ExtractorList *elist = NULL, *ecur = NULL;
-  Module *cur_mod = NULL;
-  char *conf_str = NULL;
-  char *kwargs_list[] = {"config",NULL};
-  int rv = 0;
-
-  if( !PyArg_ParseTupleAndKeywords(args,kwargs,"|s:__init__",kwargs_list,
-                                  &conf_str) ) {
-    PyErr_Clear();
-    if( !PyArg_ParseTupleAndKeywords(args,kwargs,"O:__init__",kwargs_list,
-                                    &conf) )
-      goto error;
-  }
-
-  if( !conf ) {
-    if( conf_str )
-      elist = EXTRACTOR_loadConfigLibraries(NULL,conf_str);
-    else
-      elist = EXTRACTOR_loadDefaultLibraries();
-
-    ecur = elist;
-    while( ecur ) {
-      elist = ecur->next;
-
-      if( !( cur_mod = PyObject_NEW(Module,&ModuleType) ) )
-       goto error;
-      cur_mod->module = ecur;
-
-      if( PyList_Append(self->moduleList,(PyObject*)cur_mod) )
-       goto error;
-
-      ecur->next = NULL;
-      ecur = elist;
-
-      Py_DECREF(cur_mod);
-      cur_mod = NULL;
-    }
-  } else {
-    if( !( conf_iter = PyObject_GetIter(conf) ) ) {
-      PyErr_Clear();
-
-      if( !PyObject_IsInstance(conf,(PyObject*)&ModuleType) )
-       goto error;
-
-      if( PyList_Append(self->moduleList,conf) )
-       goto error;
-    } else {
-      while( ( conf_item = PyIter_Next(conf_iter) ) ) {
-       if( !( conf_str = PyString_AsString(conf_item) ) ) {
-         if( !PyObject_IsInstance(conf_item,(PyObject*)&ModuleType) )
-           goto error;
-
-         if( PyList_Append(self->moduleList,conf_item) )
-           goto error;
-       } else {
-         elist = EXTRACTOR_addLibrary(NULL,conf_str);
-         if( elist ) {
-           if( !( cur_mod = PyObject_NEW(Module,&ModuleType) ) )
-             goto error;
-           cur_mod->module = elist;
-
-           if( PyList_Append(self->moduleList,(PyObject*)cur_mod) )
-             goto error;
-
-           Py_DECREF(cur_mod);
-           cur_mod = NULL;
-         }
-       }
-
-       Py_DECREF(conf_item);
-       conf_item = NULL;
-      }
-
-      Py_DECREF(conf_iter);
-      conf_iter = NULL;
-    }
-  }
-
-  goto finish;
-
- error:
-  if( ecur )
-    EXTRACTOR_removeAll(ecur);
-  Py_XDECREF(cur_mod);
-  Py_XDECREF(conf_item);
-  rv = -1;
-
- finish:
-  return rv;
-}
-
-static PyObject *Extractor_iter(Extractor *self)
-{
-  return PyObject_GetIter(self->moduleList);
-}
-
-static void Extractor_dealloc(Extractor *self)
-{
-  Py_DECREF(self->moduleList);
-  self->ob_type->tp_free((PyObject*)self);
-}
-
-static PyObject *Extractor_extract(Extractor *self, PyObject *args,
-                                  PyObject *kwargs)
-{
-  PyObject *mlist = NULL;
-  int i = 0, mlist_len = 0;
-  Module *mlist_curitem = NULL;
-  EXTRACTOR_ExtractorList *efirst = NULL, *elist = NULL;
-  EXTRACTOR_KeywordList *kwlist = NULL;
-  KeywordList *rv = NULL;
-  Keyword *kw = NULL;
-  char *filename = NULL;
-  char *kwargs_list[] = {"filename",NULL};
-
-  if( !PyArg_ParseTupleAndKeywords(args,kwargs,"s:extract",kwargs_list,
-                                  &filename) )
-    goto error;
-
-  mlist_len = PyList_Size(self->moduleList);
-  if( !( mlist = PyList_New(mlist_len) ) )
-    goto error;
-
-  for( i = 0; i < mlist_len; i++ ) {
-    mlist_curitem = (Module*)PyList_GET_ITEM(self->moduleList,i);
-    Py_INCREF(mlist_curitem);
-    PyList_SET_ITEM(mlist,i,(PyObject*)mlist_curitem);
-    if( !efirst )
-      efirst = elist = malloc(sizeof(EXTRACTOR_ExtractorList));
-    else {
-      elist->next = malloc(sizeof(EXTRACTOR_ExtractorList));
-      elist = elist->next;
-    }
-    memcpy(elist,mlist_curitem->module,sizeof(EXTRACTOR_ExtractorList));
-  }
-
-  Py_BEGIN_ALLOW_THREADS;
-  kwlist = EXTRACTOR_getKeywords(efirst,filename);
-  Py_END_ALLOW_THREADS;
-
-  if( !( rv = PyObject_NEW(KeywordList,&KeywordListType) ) )
-    goto error;
-  rv->keywordList = NULL;
-  if( !( rv->keywordList = PyList_New(0) ) )
-    goto error;
-
-  while( kwlist ) {
-    if( !( kw = PyObject_NEW(Keyword,&KeywordType) ) )
-      goto error;
-    kw->keyword = kwlist;
-    kwlist = kwlist->next;
-    kw->keyword->next = NULL;
-
-    if( PyList_Append(rv->keywordList,(PyObject*)kw) )
-      goto error;
-
-    Py_DECREF(kw);
-    kw = NULL;
-  }
-
-  goto finish;
-
- error:
-  Py_XDECREF(kw);
-  if( kwlist )
-    EXTRACTOR_freeKeywords(kwlist);
-  Py_XDECREF(rv);
-  rv = NULL;
-
- finish:
-  Py_XDECREF(mlist);
-  return (PyObject*)rv;
-}
-
-static PyMethodDef Extractor_methods[] = {
-  {"extract",(PyCFunction)Extractor_extract,METH_VARARGS|METH_KEYWORDS,
-   "Extract data from file given as filename."},
-  {NULL}  /* Sentinel */
-};
-
-static PyTypeObject ExtractorType = {
-    PyObject_HEAD_INIT(NULL)
-    0,                         /*ob_size*/
-    "extractor.Extractor",     /*tp_name*/
-    sizeof(Extractor),         /*tp_basicsize*/
-    0,                         /*tp_itemsize*/
-    (destructor)Extractor_dealloc, /*tp_dealloc*/
-    0,                         /*tp_print*/
-    0,                         /*tp_getattr*/
-    0,                         /*tp_setattr*/
-    0,                         /*tp_compare*/
-    0,                         /*tp_repr*/
-    0,                         /*tp_as_number*/
-    0,                         /*tp_as_sequence*/
-    0,                         /*tp_as_mapping*/
-    0,                         /*tp_hash */
-    0,                         /*tp_call*/
-    0,                         /*tp_str*/
-    0,                         /*tp_getattro*/
-    0,                         /*tp_setattro*/
-    0,                         /*tp_as_buffer*/
-    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /*tp_flags*/
-    "Extractor objects",       /* tp_doc */
-    0,                        /* tp_traverse */
-    0,                        /* tp_clear */
-    0,                        /* tp_richcompare */
-    0,                        /* tp_weaklistoffset */
-    (getiterfunc)Extractor_iter, /* tp_iter */
-    0,                        /* tp_iternext */
-    Extractor_methods,         /* tp_methods */
-    0,                         /* tp_members */
-    0,                         /* tp_getset */
-    0,                         /* tp_base */
-    0,                         /* tp_dict */
-    0,                         /* tp_descr_get */
-    0,                         /* tp_descr_set */
-    0,                         /* tp_dictoffset */
-    (initproc)Extractor_init,  /* tp_init */
-    0,                         /* tp_alloc */
-    Extractor_new,             /* tp_new */
-};
-
-/* Module type. */
-
-/* KeywordList type. */
-
-static PyObject *KeywordList_new(PyTypeObject *type, PyObject *args,
-                                PyObject *kwargs)
-{
-  KeywordList *self = NULL;
-
-  if( !( self = (KeywordList*)type->tp_alloc(type,0) ) )
-    goto error;
-  if( !( self->keywordList = PyList_New(0) ) )
-    goto error;
-
-  goto finish;
-
- error:
-  Py_XDECREF(self);
-  self = NULL;
-
- finish:
-  return (PyObject*)self;
-}
-
-static int KeywordList_init(KeywordList *self, PyObject *args,
-                           PyObject *kwargs)
-{
-  PyObject *kw = NULL, *kw_iter = NULL, *kw_item = NULL;
-  Keyword *cur_kw = NULL;
-  int curtype = 0;
-  char *curvalue = NULL;
-  char *kwargs_list[] = {"keywords",NULL};
-  int rv = 0;
-
-  if( !PyArg_ParseTupleAndKeywords(args,kwargs,"|O:__init__",kwargs_list,
-                                  &kw) )
-    goto error;
-
-  if( kw )
-    if( PyObject_IsInstance(kw,(PyObject*)&KeywordType) ) {
-      if( PyList_Append(self->keywordList,kw) )
-       goto error;
-    } else if( PyArg_ParseTuple(kw,"(is)",&curtype,&curvalue) ) {
-      if( !( cur_kw = PyObject_NEW(Keyword,&KeywordType) ) )
-       goto error;
-      cur_kw->keyword = NULL;
-
-      cur_kw->keyword = malloc(sizeof(EXTRACTOR_KeywordList));
-      cur_kw->keyword->keyword = strdup(curvalue);
-      cur_kw->keyword->keywordType = curtype;
-      cur_kw->keyword->next = NULL;
-
-      if( PyList_Append(self->keywordList,(PyObject*)cur_kw) )
-       goto error;
-
-      Py_DECREF(cur_kw);
-      cur_kw = NULL;
-    } else {
-      PyErr_Clear();
-      if( !( kw_iter = PyObject_GetIter(kw) ) )
-       goto error;
-
-      while( ( kw_item = PyIter_Next(kw_iter) ) ) {
-       if( PyObject_IsInstance(kw_item,(PyObject*)&KeywordType) ) {
-         if( PyList_Append(self->keywordList,kw_item) )
-           goto error;
-       } else {
-         if( !PyArg_ParseTuple(kw_item,"(is)",&curtype,&curvalue) )
-           goto error;
-
-         if( !( cur_kw = PyObject_NEW(Keyword,&KeywordType) ) )
-           goto error;
-         cur_kw->keyword = NULL;
-
-         cur_kw->keyword = malloc(sizeof(EXTRACTOR_KeywordList));
-         cur_kw->keyword->keyword = strdup(curvalue);
-         cur_kw->keyword->keywordType = curtype;
-         cur_kw->keyword->next = NULL;
-
-         if( PyList_Append(self->keywordList,(PyObject*)cur_kw) )
-           goto error;
-
-         Py_DECREF(cur_kw);
-         cur_kw = NULL;
-       }
-
-       Py_DECREF(kw_item);
-       kw_item = NULL;
-      }
-
-      Py_DECREF(kw_iter);
-      kw_iter = NULL;
-    }
-
-  goto finish;
-
- error:
-  Py_XDECREF(cur_kw);
-  Py_XDECREF(kw_item);
-  rv = -1;
-
- finish:
-  return rv;
-}
-
-static PyObject *KeywordList_iter(KeywordList *self)
-{
-  return PyObject_GetIter(self->keywordList);
-}
-
-static void KeywordList_dealloc(KeywordList *self)
-{
-  Py_XDECREF(self->keywordList);
-  self->ob_type->tp_free((PyObject*)self);
-}
-
-static PyMethodDef KeywordList_methods[] = {
-  {NULL}  /* Sentinel */
-};
-
-static PyTypeObject KeywordListType = {
-    PyObject_HEAD_INIT(NULL)
-    0,                         /*ob_size*/
-    "extractor.KeywordList",   /*tp_name*/
-    sizeof(KeywordList),       /*tp_basicsize*/
-    0,                         /*tp_itemsize*/
-    (destructor)KeywordList_dealloc, /*tp_dealloc*/
-    0,                         /*tp_print*/
-    0,                         /*tp_getattr*/
-    0,                         /*tp_setattr*/
-    0,                         /*tp_compare*/
-    0,                         /*tp_repr*/
-    0,                         /*tp_as_number*/
-    0,                         /*tp_as_sequence*/
-    0,                         /*tp_as_mapping*/
-    0,                         /*tp_hash */
-    0,                         /*tp_call*/
-    0,                         /*tp_str*/
-    0,                         /*tp_getattro*/
-    0,                         /*tp_setattro*/
-    0,                         /*tp_as_buffer*/
-    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /*tp_flags*/
-    "KeywordList objects",     /* tp_doc */
-    0,                        /* tp_traverse */
-    0,                        /* tp_clear */
-    0,                        /* tp_richcompare */
-    0,                        /* tp_weaklistoffset */
-    (getiterfunc)KeywordList_iter, /* tp_iter */
-    0,                        /* tp_iternext */
-    KeywordList_methods,       /* tp_methods */
-    0,                         /* tp_members */
-    0,                         /* tp_getset */
-    0,                         /* tp_base */
-    0,                         /* tp_dict */
-    0,                         /* tp_descr_get */
-    0,                         /* tp_descr_set */
-    0,                         /* tp_dictoffset */
-    (initproc)KeywordList_init, /* tp_init */
-    0,                         /* tp_alloc */
-    KeywordList_new,           /* tp_new */
-};
-
-/* Keyword type. */
-
-static PyObject *Keyword_new(PyTypeObject *type, PyObject *args,
-                            PyObject *kwargs)
-{
-  Keyword *self = NULL;
-  char *name = NULL;
-  char *kwargs_list[] = {"name",NULL};
-
-  if( !( self = (Keyword*)type->tp_alloc(type,0) ) )
-    goto error;
-  if( !( self->keyword = malloc(sizeof(EXTRACTOR_KeywordList)) ) )
-    goto error;
-
-  self->keyword->keyword = strdup("");
-  self->keyword->keywordType = 0;
-  self->keyword->next = NULL;
-
-  goto finish;
-
- error:
-  Py_XDECREF(self);
-  self = NULL;
-
- finish:
-  return (PyObject*)self;
-}
-
-static int Keyword_init(Keyword *self, PyObject *args, PyObject *kwargs)
-{
-  int type = 0;
-  char *value = NULL;
-  char *kwargs_list[] = {"type","value",NULL};
-  int rv = 0;
-
-  if( !PyArg_ParseTupleAndKeywords(args,kwargs,"is:__init__",kwargs_list,
-                                  &type,&value) ) {
-    PyErr_Clear();
-    if( !PyArg_ParseTupleAndKeywords(args,kwargs,":__init__",kwargs_list) )
-      goto error;
-
-    goto finish;
-  }
-
-  free(self->keyword->keyword);
-  self->keyword->keyword = strdup(value);
-  self->keyword->keywordType = type;
-
-  goto finish;
-
- error:
-  rv = -1;
-
- finish:
-  return rv;
-}
-
-static void Keyword_dealloc(Keyword *self)
-{
-  EXTRACTOR_freeKeywords(self->keyword);
-  self->ob_type->tp_free((PyObject*)self);
-}
-
-static PyObject *Keyword_getType(Keyword *self, PyObject *args)
-{
-  return PyInt_FromLong(self->keyword->keywordType);
-}
-
-static PyObject *Keyword_getValue(Keyword *self, PyObject *args)
-{
-  return PyString_FromString(self->keyword->keyword);
-}
-
-static PyMethodDef Keyword_methods[] = {
-  {"getType",(PyCFunction)Keyword_getType,METH_NOARGS,
-   "Retrieve type of keyword."},
-  {"getValue",(PyCFunction)Keyword_getValue,METH_NOARGS,
-   "Retrieve value of keyword."},
-  {NULL}  /* Sentinel */
-};
-
-static PyTypeObject KeywordType = {
-    PyObject_HEAD_INIT(NULL)
-    0,                         /*ob_size*/
-    "extractor.Keyword",        /*tp_name*/
-    sizeof(Keyword),           /*tp_basicsize*/
-    0,                         /*tp_itemsize*/
-    (destructor)Keyword_dealloc, /*tp_dealloc*/
-    0,                         /*tp_print*/
-    0,                         /*tp_getattr*/
-    0,                         /*tp_setattr*/
-    0,                         /*tp_compare*/
-    0,                         /*tp_repr*/
-    0,                         /*tp_as_number*/
-    0,                         /*tp_as_sequence*/
-    0,                         /*tp_as_mapping*/
-    0,                         /*tp_hash */
-    0,                         /*tp_call*/
-    0,                         /*tp_str*/
-    0,                         /*tp_getattro*/
-    0,                         /*tp_setattro*/
-    0,                         /*tp_as_buffer*/
-    Py_TPFLAGS_DEFAULT | Py_TPFLAGS_BASETYPE, /*tp_flags*/
-    "Keyword objects",         /* tp_doc */
-    0,                        /* tp_traverse */
-    0,                        /* tp_clear */
-    0,                        /* tp_richcompare */
-    0,                        /* tp_weaklistoffset */
-    0,                         /* tp_iter */
-    0,                        /* tp_iternext */
-    Keyword_methods,           /* tp_methods */
-    0,                         /* tp_members */
-    0,                         /* tp_getset */
-    0,                         /* tp_base */
-    0,                         /* tp_dict */
-    0,                         /* tp_descr_get */
-    0,                         /* tp_descr_set */
-    0,                         /* tp_dictoffset */
-    (initproc)Keyword_init,    /* tp_init */
-    0,                         /* tp_alloc */
-    Keyword_new,               /* tp_new */
-};
-
-/* Module. */





reply via email to

[Prev in Thread] Current Thread [Next in Thread]