Revision: 1613
http://pygccxml.svn.sourceforge.net/pygccxml/?rev=1613&view=rev
Author: roman_yakovenko
Date: 2009-01-26 06:49:48 +0000 (Mon, 26 Jan 2009)
Log Message:
-----------
merging ctypes and boost.python code creators into single file
Modified Paths:
--------------
pyplusplus_dev/pyplusplus/code_creators/__init__.py
pyplusplus_dev/pyplusplus/code_creators/include.py
pyplusplus_dev/pyplusplus/code_creators/module.py
pyplusplus_dev/pyplusplus/code_creators/namespace.py
Removed Paths:
-------------
pyplusplus_dev/pyplusplus/code_creators/import_.py
pyplusplus_dev/pyplusplus/code_creators/namespace_as_pyclass.py
Modified: pyplusplus_dev/pyplusplus/code_creators/__init__.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/__init__.py 2009-01-26 06:34:05 UTC (rev 1612)
+++ pyplusplus_dev/pyplusplus/code_creators/__init__.py 2009-01-26 06:49:48 UTC (rev 1613)
@@ -14,6 +14,7 @@
The base class for all code creators is L{code_creator_t}.
"""
+
from code_creator import code_creator_t
from code_creator import separator_t
from compound import compound_t
@@ -35,11 +36,13 @@
from module_body import module_body_t
from include import include_t
+from include import import_t
from unnamed_enum import unnamed_enum_t
from namespace import namespace_alias_t
from namespace import namespace_using_t
+from namespace import namespace_as_pyclass_t
from enum import enum_t
@@ -118,6 +121,7 @@
from license import license_t
from module import bpmodule_t
+from module import ctypes_module_t
from smart_pointers import held_type_t
from smart_pointers import smart_pointers_converter_t
@@ -144,11 +148,8 @@
from bookmark import bookmark_t
#pure ctypes
-from module import ctypes_module_t
-from import_ import import_t
from library_reference import library_reference_t
from name_mappings import name_mappings_t
-from namespace_as_pyclass import namespace_as_pyclass_t
from class_introduction import class_introduction_t
from class_introduction import class_declaration_introduction_t
from mem_fun_introduction import mem_fun_introduction_t
Deleted: pyplusplus_dev/pyplusplus/code_creators/import_.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/import_.py 2009-01-26 06:34:05 UTC (rev 1612)
+++ pyplusplus_dev/pyplusplus/code_creators/import_.py 2009-01-26 06:49:48 UTC (rev 1613)
@@ -1,21 +0,0 @@
-# Copyright 2004-2008 Roman Yakovenko.
-# Distributed under the Boost Software License, Version 1.0. (See
-# accompanying file LICENSE_1_0.txt or copy at
-# http://www.boost.org/LICENSE_1_0.txt)
-
-import os
-import code_creator
-import include_directories
-
-
-class import_t(code_creator.code_creator_t):
- """Creates Python import directive"""
- def __init__( self, module_name ):
- code_creator.code_creator_t.__init__(self)
- self._module_name = module_name
-
- def _create_impl(self):
- return 'import %(module)s' % dict( module=os.path.splitext(self._module_name)[0] )
-
- def _get_system_files_impl( self ):
- return []
Modified: pyplusplus_dev/pyplusplus/code_creators/include.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/include.py 2009-01-26 06:34:05 UTC (rev 1612)
+++ pyplusplus_dev/pyplusplus/code_creators/include.py 2009-01-26 06:49:48 UTC (rev 1613)
@@ -3,6 +3,7 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+import os
import code_creator
import include_directories
@@ -21,29 +22,29 @@
@property
def is_user_defined(self):
return self._user_defined
-
+
@property
def is_system(self):
"""Return True if header file is system( Boost.Python or Py++ ) header file"""
return self._system
-
+
def _get_header(self):
return self._header
def _set_header(self, header):
self._header = include_directories.include_directories_t.normalize( header )
header = property( _get_header, _set_header )
-
+
def _get_include_dirs_optimization(self):
return self._include_dirs_optimization
def _set_include_dirs_optimization(self, include_dirs):
self._include_dirs_optimization = include_dirs
- include_dirs_optimization = property( _get_include_dirs_optimization, _set_include_dirs_optimization )
-
+ include_dirs_optimization = property( _get_include_dirs_optimization, _set_include_dirs_optimization )
+
def _create_include_directive_code(self):
header = self.header.strip()
if header.startswith( '"' ) or header.startswith( '<' ):
return '#include %s' % self.header
-
+
if not self.include_dirs_optimization:
return '#include "%s"' % self.header
else:
@@ -52,11 +53,24 @@
return '#include <%s>' % normalize_header
else:
return '#include "%s"' % normalize_header
-
+
def _create_impl(self):
if not self.__created_code:
self.__created_code = self._create_include_directive_code()
return self.__created_code
-
+
def _get_system_files_impl( self ):
return []
+
+
+class import_t(code_creator.code_creator_t):
+ """Creates Python import directive"""
+ def __init__( self, module_name ):
+ code_creator.code_creator_t.__init__(self)
+ self._module_name = module_name
+
+ def _create_impl(self):
+ return 'import %(module)s' % dict( module=os.path.splitext(self._module_name)[0] )
+
+ def _get_system_files_impl( self ):
+ return []
Modified: pyplusplus_dev/pyplusplus/code_creators/module.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/module.py 2009-01-26 06:34:05 UTC (rev 1612)
+++ pyplusplus_dev/pyplusplus/code_creators/module.py 2009-01-26 06:49:48 UTC (rev 1613)
@@ -5,7 +5,6 @@
import os
import custom
-import import_
import license
import include
import compound
Modified: pyplusplus_dev/pyplusplus/code_creators/namespace.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/namespace.py 2009-01-26 06:34:05 UTC (rev 1612)
+++ pyplusplus_dev/pyplusplus/code_creators/namespace.py 2009-01-26 06:49:48 UTC (rev 1613)
@@ -3,7 +3,10 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+import os
+import compound
import code_creator
+import declaration_based
class namespace_alias_t(code_creator.code_creator_t):
def __init__( self, alias, full_namespace_name ):
@@ -23,7 +26,7 @@
def _set_full_namespace_name( self, new_full_namespace_name ):
self._full_namespace_name = new_full_namespace_name
full_namespace_name = property( _get_full_namespace_name, _set_full_namespace_name )
-
+
def _create_impl(self):
if self.__created_code:
return self.__created_code
@@ -45,13 +48,32 @@
def _set_namespace_name( self, new_namespace_name ):
self._namespace_name = new_namespace_name
namespace_name = property( _get_namespace_name, _set_namespace_name )
-
+
def _create_impl(self):
if self.__created_code:
return self.__created_code
else:
self.__created_code = 'using namespace %s;' % self.namespace_name
return self.__created_code
-
+
def _get_system_files_impl( self ):
return []
+
+
+class namespace_as_pyclass_t(compound.compound_t, declaration_based.declaration_based_t):
+ def __init__( self, ns ):
+ compound.compound_t.__init__(self)
+ declaration_based.declaration_based_t.__init__( self, ns )
+
+ def _create_impl(self):
+ result = []
+ result.append( "class %s:" % self.alias )
+ result.append( self.indent( '"""namespace %s"""' % self.decl_identifier ) )
+ if self.creators:
+ result.append( self.indent( "" ) )
+ result.append( compound.compound_t.create_internal_code( self.creators ) )
+ return os.linesep.join( result )
+
+ def _get_system_files_impl( self ):
+ return []
+
Deleted: pyplusplus_dev/pyplusplus/code_creators/namespace_as_pyclass.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/namespace_as_pyclass.py 2009-01-26 06:34:05 UTC (rev 1612)
+++ pyplusplus_dev/pyplusplus/code_creators/namespace_as_pyclass.py 2009-01-26 06:49:48 UTC (rev 1613)
@@ -1,25 +0,0 @@
-# Copyright 2004-2008 Roman Yakovenko.
-# Distributed under the Boost Software License, Version 1.0. (See
-# accompanying file LICENSE_1_0.txt or copy at
-# http://www.boost.org/LICENSE_1_0.txt)
-
-import os
-import compound
-import declaration_based
-
-class namespace_as_pyclass_t(compound.compound_t, declaration_based.declaration_based_t):
- def __init__( self, ns ):
- compound.compound_t.__init__(self)
- declaration_based.declaration_based_t.__init__( self, ns )
-
- def _create_impl(self):
- result = []
- result.append( "class %s:" % self.alias )
- result.append( self.indent( '"""namespace %s"""' % self.decl_identifier ) )
- if self.creators:
- result.append( self.indent( "" ) )
- result.append( compound.compound_t.create_internal_code( self.creators ) )
- return os.linesep.join( result )
-
- def _get_system_files_impl( self ):
- return []
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|