aboutsummaryrefslogtreecommitdiffstats
path: root/contrib/libs/pycxx/Python2/Extensions.hxx
diff options
context:
space:
mode:
authorqrort <qrort@yandex-team.com>2022-12-02 11:31:25 +0300
committerqrort <qrort@yandex-team.com>2022-12-02 11:31:25 +0300
commitb1f4ffc9c8abff3ba58dc1ec9a9f92d2f0de6806 (patch)
tree2a23209faf0fea5586a6d4b9cee60d1b318d29fe /contrib/libs/pycxx/Python2/Extensions.hxx
parent559174a9144de40d6bb3997ea4073c82289b4974 (diff)
downloadydb-b1f4ffc9c8abff3ba58dc1ec9a9f92d2f0de6806.tar.gz
remove kikimr/driver DEPENDS
Diffstat (limited to 'contrib/libs/pycxx/Python2/Extensions.hxx')
-rwxr-xr-xcontrib/libs/pycxx/Python2/Extensions.hxx189
1 files changed, 0 insertions, 189 deletions
diff --git a/contrib/libs/pycxx/Python2/Extensions.hxx b/contrib/libs/pycxx/Python2/Extensions.hxx
deleted file mode 100755
index 42516eb1c64..00000000000
--- a/contrib/libs/pycxx/Python2/Extensions.hxx
+++ /dev/null
@@ -1,189 +0,0 @@
-//-----------------------------------------------------------------------------
-//
-// Copyright (c) 1998 - 2007, The Regents of the University of California
-// Produced at the Lawrence Livermore National Laboratory
-// All rights reserved.
-//
-// This file is part of PyCXX. For details,see http://cxx.sourceforge.net/. The
-// full copyright notice is contained in the file COPYRIGHT located at the root
-// of the PyCXX distribution.
-//
-// Redistribution and use in source and binary forms, with or without
-// modification, are permitted provided that the following conditions are met:
-//
-// - Redistributions of source code must retain the above copyright notice,
-// this list of conditions and the disclaimer below.
-// - Redistributions in binary form must reproduce the above copyright notice,
-// this list of conditions and the disclaimer (as noted below) in the
-// documentation and/or materials provided with the distribution.
-// - Neither the name of the UC/LLNL nor the names of its contributors may be
-// used to endorse or promote products derived from this software without
-// specific prior written permission.
-//
-// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
-// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
-// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
-// ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OF THE UNIVERSITY OF
-// CALIFORNIA, THE U.S. DEPARTMENT OF ENERGY OR CONTRIBUTORS BE LIABLE FOR
-// ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
-// DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
-// SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
-// CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
-// LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
-// OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH
-// DAMAGE.
-//
-//-----------------------------------------------------------------------------
-
-#ifndef __CXX_Extensions__h
-#define __CXX_Extensions__h
-
-
-#ifdef _MSC_VER
-// disable warning C4786: symbol greater than 255 character,
-// okay to ignore
-#pragma warning( disable: 4786 )
-#endif
-
-#include "../WrapPython.h"
-#include "../Version.hxx"
-#include "Config.hxx"
-#include "CxxDebug.hxx"
-#include "Objects.hxx"
-
-extern "C" { extern PyObject py_object_initializer; }
-
-#include <vector>
-#include <map>
-
-// ----------------------------------------------------------------------
-
-namespace Py
-{
- class ExtensionModuleBase;
-
- // Make an Exception Type for use in raising custom exceptions
- class ExtensionExceptionType : public Object
- {
- public:
- ExtensionExceptionType();
- virtual ~ExtensionExceptionType();
-
- // call init to create the type
- void init( ExtensionModuleBase &module, const std::string &name, ExtensionExceptionType &parent );
- void init( ExtensionModuleBase &module, const std::string &name );
- };
-
- class MethodTable
- {
- public:
- MethodTable();
- virtual ~MethodTable();
-
- void add( const char *method_name, PyCFunction f, const char *doc="", int flag=1 );
- PyMethodDef *table();
-
- protected:
- std::vector<PyMethodDef> t; // accumulator of PyMethodDef's
- PyMethodDef *mt; // Actual method table produced when full
-
- static PyMethodDef method( const char* method_name, PyCFunction f, int flags=1, const char* doc="" );
-
- private:
- //
- // prevent the compiler generating these unwanted functions
- //
- MethodTable( const MethodTable &m ); //unimplemented
- void operator=( const MethodTable &m ); //unimplemented
-
- }; // end class MethodTable
-
- // Note: Python calls noargs as varargs buts args==NULL
- extern "C" typedef PyObject *(*method_noargs_call_handler_t)( PyObject *_self, PyObject * );
- extern "C" typedef PyObject *(*method_varargs_call_handler_t)( PyObject *_self, PyObject *_args );
- extern "C" typedef PyObject *(*method_keyword_call_handler_t)( PyObject *_self, PyObject *_args, PyObject *_dict );
-
- template<class T>
- class MethodDefExt
- {
- public:
- typedef Object (T::*method_noargs_function_t)();
- typedef Object (T::*method_varargs_function_t)( const Tuple &args );
- typedef Object (T::*method_keyword_function_t)( const Tuple &args, const Dict &kws );
-
- // NOARGS
- MethodDefExt
- (
- const char *_name,
- method_noargs_function_t _function,
- method_noargs_call_handler_t _handler,
- const char *_doc
- )
- {
- ext_meth_def.ml_name = const_cast<char *>( _name );
- ext_meth_def.ml_meth = reinterpret_cast<method_varargs_call_handler_t>( _handler );
- ext_meth_def.ml_flags = METH_NOARGS;
- ext_meth_def.ml_doc = const_cast<char *>( _doc );
-
- ext_noargs_function = _function;
- ext_varargs_function = NULL;
- ext_keyword_function = NULL;
- }
-
- // VARARGS
- MethodDefExt
- (
- const char *_name,
- method_varargs_function_t _function,
- method_varargs_call_handler_t _handler,
- const char *_doc
- )
- {
- ext_meth_def.ml_name = const_cast<char *>( _name );
- ext_meth_def.ml_meth = reinterpret_cast<method_varargs_call_handler_t>( _handler );
- ext_meth_def.ml_flags = METH_VARARGS;
- ext_meth_def.ml_doc = const_cast<char *>( _doc );
-
- ext_noargs_function = NULL;
- ext_varargs_function = _function;
- ext_keyword_function = NULL;
- }
-
- // VARARGS + KEYWORD
- MethodDefExt
- (
- const char *_name,
- method_keyword_function_t _function,
- method_keyword_call_handler_t _handler,
- const char *_doc
- )
- {
- ext_meth_def.ml_name = const_cast<char *>( _name );
- ext_meth_def.ml_meth = reinterpret_cast<method_varargs_call_handler_t>( _handler );
- ext_meth_def.ml_flags = METH_VARARGS|METH_KEYWORDS;
- ext_meth_def.ml_doc = const_cast<char *>( _doc );
-
- ext_noargs_function = NULL;
- ext_varargs_function = NULL;
- ext_keyword_function = _function;
- }
-
- ~MethodDefExt()
- {}
-
- PyMethodDef ext_meth_def;
- method_noargs_function_t ext_noargs_function;
- method_varargs_function_t ext_varargs_function;
- method_keyword_function_t ext_keyword_function;
- Object py_method;
- };
-} // Namespace Py
-
-#include "ExtensionModule.hxx"
-#include "PythonType.hxx"
-#include "ExtensionTypeBase.hxx"
-#include "ExtensionOldType.hxx"
-#include "ExtensionType.hxx"
-
-// End of CXX_Extensions.h
-#endif