[Zope-Checkins] CVS: Zope/lib/python/Products/PluginIndexes/TextIndex/Splitter/ZopeSplitter/src - ZopeSplitter.c:1.2.2.1 Splitter.c:NONE

Shane Hathaway shane@digicool.com
Thu, 9 Aug 2001 13:33:36 -0400


Update of /cvs-repository/Zope/lib/python/Products/PluginIndexes/TextIndex/Splitter/ZopeSplitter/src
In directory cvs.zope.org:/tmp/cvs-serv29115/lib/python/Products/PluginIndexes/TextIndex/Splitter/ZopeSplitter/src

Added Files:
      Tag: NR-branch
	ZopeSplitter.c 
Removed Files:
      Tag: NR-branch
	Splitter.c 
Log Message:
Sync NR-branch with trunk.  Sorry about so many checkin messages...


=== Added File Zope/lib/python/Products/PluginIndexes/TextIndex/Splitter/ZopeSplitter/src/ZopeSplitter.c === (402/502 lines abridged)
/*****************************************************************************
  
  Zope Public License (ZPL) Version 1.0
  -------------------------------------
  
  Copyright (c) Digital Creations.  All rights reserved.
  
  This license has been certified as Open Source(tm).
  
  Redistribution and use in source and binary forms, with or without
  modification, are permitted provided that the following conditions are
  met:
  
  1. Redistributions in source code must retain the above copyright
     notice, this list of conditions, and the following disclaimer.
  
  2. Redistributions in binary form must reproduce the above copyright
     notice, this list of conditions, and the following disclaimer in
     the documentation and/or other materials provided with the
     distribution.
  
  3. Digital Creations requests that attribution be given to Zope
     in any manner possible. Zope includes a "Powered by Zope"
     button that is installed by default. While it is not a license
     violation to remove this button, it is requested that the
     attribution remain. A significant investment has been put
     into Zope, and this effort will continue if the Zope community
     continues to grow. This is one way to assure that growth.
  
  4. All advertising materials and documentation mentioning
     features derived from or use of this software must display
     the following acknowledgement:
  
       "This product includes software developed by Digital Creations
       for use in the Z Object Publishing Environment
       (http://www.zope.org/)."
  
     In the event that the product being advertised includes an
     intact Zope distribution (with copyright and license included)
     then this clause is waived.
  
  5. Names associated with Zope or Digital Creations must not be used to
     endorse or promote products derived from this software without
     prior written permission from Digital Creations.
  
  6. Modified redistributions of any form whatsoever must retain
     the following acknowledgment:
  
       "This product includes software developed by Digital Creations
       for use in the Z Object Publishing Environment

[-=- -=- -=- 402 lines omitted -=- -=- -=-]

    if(synstop)
      {
	self->synstop=synstop;
	Py_INCREF(synstop);
      }
    else self->synstop=NULL;

    UNLESS(self->text = PyObject_Str(doc)) goto err;
    UNLESS(self->here=PyString_AsString(self->text)) goto err;
    self->end = self->here + PyString_Size(self->text);
    self->index = -1;
    return (PyObject*)self;
err:
    Py_DECREF(self);
    return NULL;
}

static struct PyMethodDef Splitter_module_methods[] = {
    { "ZopeSplitter", (PyCFunction)get_Splitter, METH_VARARGS,
      "ZopeSplitter(doc[,synstop]) -- Return a word splitter" },
    { NULL, NULL }
};

static char Splitter_module_documentation[] = 
"Parse source strings into sequences of words\n"
"\n"
"for use in an inverted index\n"
"\n"
"$Id: ZopeSplitter.c,v 1.2.2.1 2001/08/09 17:33:35 shane Exp $\n"
;


void
initZopeSplitter(void)
{
  PyObject *m, *d;
  char *rev="$Revision: 1.2.2.1 $";
  
  /* Create the module and add the functions */
  m = Py_InitModule4("ZopeSplitter", Splitter_module_methods,
                     Splitter_module_documentation,
                     (PyObject*)NULL,PYTHON_API_VERSION);
  
  /* Add some symbolic constants to the module */
  d = PyModule_GetDict(m);
  PyDict_SetItemString(d, "__version__",
		       PyString_FromStringAndSize(rev+11,strlen(rev+11)-2));

  if (PyErr_Occurred()) Py_FatalError("can't initialize module Splitter");
}

=== Removed File Zope/lib/python/Products/PluginIndexes/TextIndex/Splitter/ZopeSplitter/src/Splitter.c ===