Revision: 443
Author: roman_yakovenko
Date: 2006-08-23 12:29:16 -0700 (Wed, 23 Aug 2006)
ViewCVS: http://svn.sourceforge.net/pygccxml/?rev=443&view=rev
Log Message:
-----------
updating documentation
Modified Paths:
--------------
pyplusplus_dev/pyplusplus/_logging_/__init__.py
pyplusplus_dev/pyplusplus/_logging_/multi_line_formatter.py
pyplusplus_dev/pyplusplus/code_creators/array_1_registrator.py
pyplusplus_dev/pyplusplus/decl_wrappers/algorithm.py
pyplusplus_dev/pyplusplus/file_writers/__init__.py
pyplusplus_dev/pyplusplus/file_writers/class_multiple_files.py
pyplusplus_dev/pyplusplus/file_writers/multiple_files.py
pyplusplus_dev/pyplusplus/file_writers/single_file.py
pyplusplus_dev/pyplusplus/file_writers/writer.py
pyplusplus_dev/pyplusplus/gui/freeze.py
pyplusplus_dev/pyplusplus/gui/ui.py
pyplusplus_dev/pyplusplus/gui/ui_runner.py
pyplusplus_dev/pyplusplus/gui/wizard.py
Modified: pyplusplus_dev/pyplusplus/_logging_/__init__.py
===================================================================
--- pyplusplus_dev/pyplusplus/_logging_/__init__.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/_logging_/__init__.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -4,10 +4,7 @@
# http://www.boost.org/LICENSE_1_0.txt)
#TODO: find better place for it
-"""
-This package contains logging configuration for Py++. Default log level
-is DEBUG. Default log messages destination is sys.stdout.
-"""
+"""defines logger classes"""
import os
import sys
@@ -15,17 +12,37 @@
from multi_line_formatter import multi_line_formatter_t
def _create_logger_( name ):
+ """implementation details"""
logger = logging.getLogger(name)
handler = logging.StreamHandler(sys.stdout)
handler.setFormatter( multi_line_formatter_t( os.linesep + '%(levelname)s: %(message)s' ) )
- logger.addHandler(handler)
+ logger.addHandler(handler)
logger.setLevel(logging.INFO)
return logger
class loggers:
+ """class-namespace, defines few loggers classes, used in the project"""
+
file_writer = _create_logger_( 'pyplusplus.file_writer' )
+ """logger for classes that write code to files"""
+
declarations = _create_logger_( 'pyplusplus.declarations' )
+ """logger for declaration classes
+
+ This is very import logger. All important messages: problems with declarations,
+ warnings or hints are written to this logger.
+ """
+
module_builder = _create_logger_( 'pyplusplus.module_builder' )
+ """logger that in use by L{module_builder_t} class.
+
+ Just another logger. It exists mostly for Py++ developers.
+ """
+
#root logger exists for configuration purpose only
root = logging.getLogger( 'pyplusplus' )
- all = [ root, file_writer, module_builder, declarations ]
\ No newline at end of file
+ """root logger exists for your convinience only"""
+
+ all = [ root, file_writer, module_builder, declarations ]
+ """contains all logger classes, defined by the class"""
+
\ No newline at end of file
Modified: pyplusplus_dev/pyplusplus/_logging_/multi_line_formatter.py
===================================================================
--- pyplusplus_dev/pyplusplus/_logging_/multi_line_formatter.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/_logging_/multi_line_formatter.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -5,6 +5,8 @@
# Initial version by Matthias Baas (ba...@ir...).
+"""defines a class that helps to format user messages"""
+
import os, logging, textwrap
class multi_line_formatter_t(logging.Formatter):
Modified: pyplusplus_dev/pyplusplus/code_creators/array_1_registrator.py
===================================================================
--- pyplusplus_dev/pyplusplus/code_creators/array_1_registrator.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/code_creators/array_1_registrator.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -3,6 +3,7 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+
import os
import algorithm
import code_creator
Modified: pyplusplus_dev/pyplusplus/decl_wrappers/algorithm.py
===================================================================
--- pyplusplus_dev/pyplusplus/decl_wrappers/algorithm.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/decl_wrappers/algorithm.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -77,11 +77,12 @@
def create_identifier(creator, full_name ):
- from pyplusplus import code_creators
"""
This function will find all relevant namespace aliases and will return new
full name that takes into account namespace aliases.
"""
+
+ from pyplusplus import code_creators
dset = creators_affect_on_me( creator )
dset = filter( lambda x: isinstance( x, code_creators.namespace_alias_t ), dset )
full_name = full_name.lstrip( '::' )
Modified: pyplusplus_dev/pyplusplus/file_writers/__init__.py
===================================================================
--- pyplusplus_dev/pyplusplus/file_writers/__init__.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/file_writers/__init__.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -6,12 +6,14 @@
"""
This package contains few classes, that writes L{code_creators.module_t} to files.
-Right now 2 strategies were implemented:
+Right now 3 strategies were implemented:
- 1. classic strategy of deviding classes to files one class in one header + source
+ 1. All code is written in one file
+
+ 2. Classic strategy of deviding classes to files: one class in one header + source
files.
- 2. all code is written in one file.
+ 2.1 Huge classes are splitten to few source files.
"""
@@ -22,6 +24,7 @@
from class_multiple_files import class_multiple_files_t
def write_file( data, file_path ):
+ """writes data to file"""
if isinstance( data, types.StringTypes ):
writer_t.write_file( data, file_path )
else:
@@ -29,9 +32,11 @@
sf.write()
def write_multiple_files( extmodule, dir_path ):
+ """writes extmodule to multiple files"""
mfs = multiple_files_t( extmodule, dir_path )
mfs.write()
def write_class_multiple_files( extmodule, dir_path, huge_classes ):
+ """writes extmodue to multiple files and splits huge classes to few source files"""
mfs = class_multiple_files_t( extmodule, dir_path, huge_classes )
mfs.write()
\ No newline at end of file
Modified: pyplusplus_dev/pyplusplus/file_writers/class_multiple_files.py
===================================================================
--- pyplusplus_dev/pyplusplus/file_writers/class_multiple_files.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/file_writers/class_multiple_files.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -3,6 +3,10 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+"""defines a class that writes L{code_creators.module_t} to multiple files, the class
+also splits huge C++ classes to few source files
+"""
+
import os
import writer
import multiple_files
Modified: pyplusplus_dev/pyplusplus/file_writers/multiple_files.py
===================================================================
--- pyplusplus_dev/pyplusplus/file_writers/multiple_files.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/file_writers/multiple_files.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -3,6 +3,8 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+"""defines a class that writes L{code_creators.module_t} to multiple files"""
+
import os
import writer
from pygccxml import declarations
Modified: pyplusplus_dev/pyplusplus/file_writers/single_file.py
===================================================================
--- pyplusplus_dev/pyplusplus/file_writers/single_file.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/file_writers/single_file.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -3,6 +3,8 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+"""defines a class that writes L{code_creators.module_t} to single file"""
+
import os
import writer
Modified: pyplusplus_dev/pyplusplus/file_writers/writer.py
===================================================================
--- pyplusplus_dev/pyplusplus/file_writers/writer.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/file_writers/writer.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -3,6 +3,8 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+"""defines interface for all classes that writes L{code_creators.module_t} to file(s)"""
+
import os
import time
from pyplusplus import _logging_
@@ -16,7 +18,6 @@
w = writer_class(module, file, ...)
w.write()
"""
-
logger = _logging_.loggers.file_writer
def __init__(self, extmodule):
@@ -36,6 +37,7 @@
@staticmethod
def create_backup(fpath):
+ """creates backup of the file, by renaming it to C{fpath + ~}"""
if not os.path.exists( fpath ):
return
backup_fpath = fpath + '~'
@@ -44,6 +46,7 @@
os.rename( fpath, backup_fpath )
def write_code_repository(self, dir):
+ """creates files defined in L{code_repository} package"""
for cr in code_repository.all:
if self.__extmodule.is_system_header( cr.file_name ):
self.write_file( os.path.join( dir, cr.file_name ), cr.code )
@@ -87,4 +90,5 @@
f = file( fpath, 'w+b' )
f.write( fcontent_new )
f.close()
- writer_t.logger.info( 'file "%s" - updated( %f seconds )' % ( fname, time.clock() - start_time ) )
\ No newline at end of file
+ writer_t.logger.info( 'file "%s" - updated( %f seconds )' % ( fname, time.clock() - start_time ) )
+
\ No newline at end of file
Modified: pyplusplus_dev/pyplusplus/gui/freeze.py
===================================================================
--- pyplusplus_dev/pyplusplus/gui/freeze.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/gui/freeze.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -4,6 +4,13 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+
+"""this module contains "freeze" functionality.
+
+It allows to create and distribute Py++ GUI as executable, that could be
+run without installing Python, pygccxml and Py++.
+"""
+
import os
import sys
import shutil
Modified: pyplusplus_dev/pyplusplus/gui/ui.py
===================================================================
--- pyplusplus_dev/pyplusplus/gui/ui.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/gui/ui.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -4,6 +4,11 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+"""this module implements GUI.
+
+TODO: It could be nice, if GUI will save the user settings beetwen runs.
+"""
+
import os
import time
import Tkinter
Modified: pyplusplus_dev/pyplusplus/gui/ui_runner.py
===================================================================
--- pyplusplus_dev/pyplusplus/gui/ui_runner.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/gui/ui_runner.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -4,6 +4,12 @@
# accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
+"""Py++ user interface runner
+
+The main purpose of this module is to run ui.py from development tree, so the
+only work it does is adding new paths to sys.path variable.
+"""
+
import os
import sys
Modified: pyplusplus_dev/pyplusplus/gui/wizard.py
===================================================================
--- pyplusplus_dev/pyplusplus/gui/wizard.py 2006-08-23 19:28:36 UTC (rev 442)
+++ pyplusplus_dev/pyplusplus/gui/wizard.py 2006-08-23 19:29:16 UTC (rev 443)
@@ -1,3 +1,5 @@
+"""generates Py++ code from the user data"""
+
CODE_TEMPLATE = \
"""
import os
@@ -22,6 +24,7 @@
"""
class wizard_t( object ):
+ """code generator that creates Py++ code"""
def __init__( self
, parser_configuration
, source_file ):
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|