Package pygccxml :: Package declarations :: Module algorithms_cache

Source Code for Module pygccxml.declarations.algorithms_cache

  1  # Copyright 2004-2008 Roman Yakovenko. 
  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  """ 
  7  defines class that will keep results of different calculations. 
  8  """ 
9 10 11 -class declaration_algs_cache_t( object ):
12 - def __init__( self ):
13 object.__init__( self ) 14 self._enabled = True 15 self._full_name = None 16 self._full_partial_name = None 17 self._access_type = None 18 self._demangled_name = None 19 self._declaration_path = None 20 self._partial_declaration_path = None 21 self._container_key_type = None 22 self._container_element_type = None
23
24 - def disable( self ):
25 self._enabled = False
26
27 - def enable( self ):
28 self._enabled = True
29 30 @property
31 - def enabled( self ):
32 return self._enabled
33
34 - def _get_full_name( self ):
35 return self._full_name
36 - def _set_full_name( self, fname ):
37 if not self.enabled: 38 fname = None 39 self._full_name = fname
40 full_name = property( _get_full_name, _set_full_name ) 41
42 - def _get_full_partial_name( self ):
43 return self._full_partial_name
44 - def _set_full_partial_name( self, fname ):
45 if not self.enabled: 46 fname = None 47 self._full_partial_name = fname
48 full_partial_name = property( _get_full_partial_name, _set_full_partial_name ) 49
50 - def _get_access_type( self ):
51 return self._access_type
52 - def _set_access_type( self, access_type ):
53 if not self.enabled: 54 access_type = None 55 self._access_type = access_type
56 access_type = property( _get_access_type, _set_access_type ) 57
58 - def _get_demangled_name( self ):
59 return self._demangled_name
60 - def _set_demangled_name( self, demangled_name ):
61 if not self.enabled: 62 demangled_name = None 63 self._demangled_name = demangled_name
64 demangled_name = property( _get_demangled_name, _set_demangled_name ) 65
66 - def _get_declaration_path( self ):
67 return self._declaration_path
68 - def _set_declaration_path( self, declaration_path ):
69 if not self.enabled: 70 declaration_path = None 71 self._declaration_path = declaration_path
72 declaration_path = property( _get_declaration_path, _set_declaration_path ) 73
75 return self._partial_declaration_path
76 - def _set_partial_declaration_path( self, partial_declaration_path ):
77 if not self.enabled: 78 partial_declaration_path = None 79 self._partial_declaration_path = partial_declaration_path
80 partial_declaration_path = property( _get_partial_declaration_path 81 , _set_partial_declaration_path ) 82
83 - def _get_container_element_type( self ):
84 return self._container_element_type
85 - def _set_container_element_type( self, etype ):
86 if not self.enabled: 87 etype = None 88 self._container_element_type = etype
89 container_element_type = property( _get_container_element_type, _set_container_element_type ) 90
91 - def _get_container_key_type( self ):
92 return self._container_key_type
93 - def _set_container_key_type( self, ktype ):
94 if not self.enabled: 95 ktype = None 96 self._container_key_type = ktype
97 container_key_type = property( _get_container_key_type, _set_container_key_type ) 98
99 - def reset( self ):
100 self.full_name = None 101 self.full_partial_name = None 102 self.access_type = None 103 self.demangled_name = None 104 self.declaration_path = None 105 self.partial_declaration_path = None 106 self.container_key_type = None 107 self.container_element_type = None
108
109 - def reset_name_based( self ):
110 self.full_name = None 111 self.full_partial_name = None 112 self.demangled_name = None 113 self.declaration_path = None 114 self.partial_declaration_path = None 115 self.container_key_type = None 116 self.container_element_type = None
117
118 - def reset_access_type( self ):
119 self.access_type = None
120
121 -class type_algs_cache_t( object ):
122 enabled = True 123 124 @staticmethod
125 - def disable():
127 128 @staticmethod
129 - def enable( self ):
131
132 - def __init__( self ):
133 object.__init__( self ) 134 self._remove_alias = None
135
136 - def _get_remove_alias( self ):
137 return self._remove_alias
138 - def _set_remove_alias( self, remove_alias ):
139 if not type_algs_cache_t.enabled: 140 remove_alias = None 141 self._remove_alias = remove_alias
142 143 remove_alias = property( _get_remove_alias, _set_remove_alias ) 144
145 - def reset(self):
146 self.remove_alias = None
147