Package pyplusplus :: Package decl_wrappers :: Module decl_wrapper_printer

Source Code for Module pyplusplus.decl_wrappers.decl_wrapper_printer

  1  # Copyright 2004-2008 Roman Yakovenko, 2006 Allen Bierbaum, Matthias Baas
 
  2  # Distributed under the Boost Software License, Version 1.0. (See
 
  3  # accompanying file LICENSE_1_0.txt or copy at
 
  4  # http://www.boost.org/LICENSE_1_0.txt)
 
  5  
 
  6  """defines class that will print in a user friendly format declarations tree and
 
  7  declarations Py++ configuration instructions""" 
  8  
 
  9  import os 
 10  import sys 
 11  from pygccxml import declarations 
 12  
 
13 -class decl_wrapper_printer_t( declarations.decl_printer_t ):
14 """ Helper class for printing declarations tree and Py++ configuration instructions""" 15 JUSTIFY = 20 16 INDENT_SIZE = 4 17
18 - def __init__( self, level=0, print_details=True, recursive=True, writer=None ):
20
21 - def clone( self, increment_level=True ):
22 level = self.level 23 if increment_level: 24 level += 1 25 return decl_wrapper_printer_t(level, self.print_details, self.recursive, self.writer)
26
27 - def print_decl_header(self):
28 super( decl_wrapper_printer_t, self ).print_decl_header() 29 if not self.print_details: 30 return 31 intend_txt = ' ' * (self.level+1) * self.INDENT_SIZE 32 self.writer( intend_txt + "Alias: " + self.instance.alias + os.linesep ) 33 self.writer( intend_txt + "Ignore: " + str( self.instance.ignore ) + os.linesep ) 34 if not self.instance.ignore: 35 msgs = self.instance.readme() 36 if msgs: 37 self.writer( intend_txt + "ReadMe: " + os.linesep ) 38 more_intend_txt = ' ' * (self.level+2) * self.INDENT_SIZE 39 for msg in msgs: 40 self.writer( more_intend_txt + msg + os.linesep )
41
42 - def print_calldef_wrapper(self):
43 if not self.print_details: 44 return 45 self.writer( ' ' * (self.level+1) * self.INDENT_SIZE 46 + "Call policies: " + str(self.instance.call_policies) + os.linesep ) 47 self.writer( ' ' * (self.level+1) * self.INDENT_SIZE 48 + "Use keywords: " + str(self.instance.use_keywords) + os.linesep ) 49 self.writer( ' ' * (self.level+1) * self.INDENT_SIZE 50 + "Use signature: " + str(self.instance.create_with_signature) + os.linesep ) 51 self.writer( ' ' * (self.level+1) * self.INDENT_SIZE 52 + "Use default arguments: " + str(self.instance.use_default_arguments) + os.linesep )
53
54 - def visit_member_function( self ):
57
58 - def visit_constructor( self ):
61
62 - def visit_destructor( self ):
65
66 - def visit_member_operator( self ):
69
70 - def visit_casting_operator( self ):
73
74 - def visit_free_function( self ):
77
78 - def visit_free_operator( self ):
81
82 - def visit_class_declaration(self ):
84
85 - def