[Jython-checkins] jython: Fixed some Traverseproc-related warnings in _jason and jffi.

stefan.richthofer jython-checkins at python.org
Tue Apr 14 21:35:11 CEST 2015


https://hg.python.org/jython/rev/ecc46d56964a
changeset:   7668:ecc46d56964a
user:        Stefan Richthofer <stefan.richthofer at gmx.de>
date:        Tue Apr 14 21:35:05 2015 +0200
summary:
  Fixed some Traverseproc-related warnings in _jason and jffi.

files:
  src/org/python/core/Traverseproc.java   |  586 ++++++-----
  src/org/python/modules/_json/_json.java |    3 +
  src/org/python/modules/jffi/CType.java  |    2 +
  3 files changed, 300 insertions(+), 291 deletions(-)


diff --git a/src/org/python/core/Traverseproc.java b/src/org/python/core/Traverseproc.java
--- a/src/org/python/core/Traverseproc.java
+++ b/src/org/python/core/Traverseproc.java
@@ -267,372 +267,376 @@
  * <br>
  * org.python.core:<br>
  *   __builtin__:<br>
- *     BuiltinFunctions            - no refs, untraversable<br>
- *     ImportFunction              - no refs, untraversable<br>
- *     SortedFunction              - no refs, untraversable<br>
- *     AllFunction                 - no refs, untraversable<br>
- *     AnyFunction                 - no refs, untraversable<br>
- *     FormatFunction              - no refs, untraversable<br>
- *     PrintFunction               - no refs, untraversable<br>
- *     MaxFunction                 - no refs, untraversable<br>
- *     MinFunction                 - no refs, untraversable<br>
- *     RoundFunction               - no refs, untraversable<br>
- *     CompileFunction             - no refs, untraversable<br>
- *     OpenFunction                - no refs, untraversable<br>
- *     NextFunction                - no refs, untraversable<br>
- *     BinFunction                 - no refs, untraversable<br>
- *   AstList                       - Traverseproc<br>
- *   BaseBytes                     - no refs, untraversable<br>
- *   BaseDictionaryView            - Traverseproc<br>
- *   BaseSet                       - Traverseproc<br>
- *   ClasspathPyImporter           - no refs, untraversable<br>
- *   ContextGuard:                 - no PyObject<br>
- *     ContextCode                 - Traverseproc<br>
- *     GeneratorContextManager     - Traverseproc<br>
- *   exceptions                    - no refs, untraversable<br>
- *     BoundStaticJavaMethod       - no refs, untraversable<br>
- *   JavaImporter                  - no refs, untraversable<br>
+ *     BuiltinFunctions              - no refs, untraversable<br>
+ *     ImportFunction                - no refs, untraversable<br>
+ *     SortedFunction                - no refs, untraversable<br>
+ *     AllFunction                   - no refs, untraversable<br>
+ *     AnyFunction                   - no refs, untraversable<br>
+ *     FormatFunction                - no refs, untraversable<br>
+ *     PrintFunction                 - no refs, untraversable<br>
+ *     MaxFunction                   - no refs, untraversable<br>
+ *     MinFunction                   - no refs, untraversable<br>
+ *     RoundFunction                 - no refs, untraversable<br>
+ *     CompileFunction               - no refs, untraversable<br>
+ *     OpenFunction                  - no refs, untraversable<br>
+ *     NextFunction                  - no refs, untraversable<br>
+ *     BinFunction                   - no refs, untraversable<br>
+ *   AstList                         - Traverseproc<br>
+ *   BaseBytes                       - no refs, untraversable<br>
+ *   BaseDictionaryView              - Traverseproc<br>
+ *   BaseSet                         - Traverseproc<br>
+ *   ClasspathPyImporter             - no refs, untraversable<br>
+ *   ContextGuard:                   - no PyObject<br>
+ *     ContextCode                   - Traverseproc<br>
+ *     GeneratorContextManager       - Traverseproc<br>
+ *   exceptions                      - no refs, untraversable<br>
+ *     BoundStaticJavaMethod         - no refs, untraversable<br>
+ *   JavaImporter                    - no refs, untraversable<br>
  *   JavaProxyList:<br>
- *     ListMethod                  - no refs, untraversable (extends PyBuiltinMethodNarrow)<br>
- *     ListMulProxyClass           - no refs, untraversable<br>
+ *     ListMethod                    - no refs, untraversable (extends PyBuiltinMethodNarrow)<br>
+ *     ListMulProxyClass             - no refs, untraversable<br>
  *   JavaProxyMap:<br>
- *     MapMethod                   - no refs, untraversable (extends PyBuiltinMethodNarrow)<br>
- *     MapClassMethod              - no refs, untraversable (extends PyBuiltinClassMethodNarrow)<br>
+ *     MapMethod                     - no refs, untraversable (extends PyBuiltinMethodNarrow)<br>
+ *     MapClassMethod                - no refs, untraversable (extends PyBuiltinClassMethodNarrow)<br>
  *   JavaProxySet:<br>
- *     SetMethod                   - no refs, untraversable (extends PyBuiltinMethodNarrow)<br>
- *     SetMethodVarargs            - no refs, untraversable (extends SetMethod)<br>
- *     CopyMethod                  - no refs, untraversable<br>
- *     IsSubsetMethod              - no refs, untraversable<br>
- *     IsSupersetMethod            - no refs, untraversable<br>
+ *     SetMethod                     - no refs, untraversable (extends PyBuiltinMethodNarrow)<br>
+ *     SetMethodVarargs              - no refs, untraversable (extends SetMethod)<br>
+ *     CopyMethod                    - no refs, untraversable<br>
+ *     IsSubsetMethod                - no refs, untraversable<br>
+ *     IsSupersetMethod              - no refs, untraversable<br>
  *   Py:<br>
- *     JavaCode                    - Traverseproc<br>
- *     JavaFunc                    - no refs, untraversable<br>
- *   Py2kBuffer                    - no refs, untraversable<br>
- *   PyArray                       - Traverseproc, traverses via reflection<br>
- *   PyBaseCode                    - no refs, abstract class<br>
- *   PyBaseException               - Traverseproc<br>
- *   PyBaseString                  - no refs, abstract class<br>
- *   PyBeanEvent                   - no refs, untraversable<br>
- *   PyBeanEventProperty           - no refs, untraversable<br>
- *   PyBeanProperty                - no refs, untraversable<br>
- *   PyBoolean                     - no refs, untraversable<br>
- *   PyBuffer                      - no PyObject<br>
- *   PyBuiltinCallable             - no refs, untraversable<br>
- *   PyBuiltinClassMethodNarrow    - no refs, abstract class<br>
- *   PyBuiltinFunction             - no refs, untraversable<br>
- *   PyBuiltinFunctionNarrow       - no refs, untraversable<br>
- *   PyBuiltinFunctionSet          - no refs, untraversable<br>
- *   PyBuiltinMethod               - Traverseproc<br>
- *   PyBuiltinMethodNarrow         - no refs, abstract class<br>
- *   PyBuiltinMethodSet            - Traverseproc<br>
- *   PyByteArray                   - no refs, untraversable<br>
- *   PyBytecode                    - Traverseproc<br>
- *     PyStackWhy                  - no refs, untraversable<br>
- *     PyStackException            - Traverseproc<br>
- *     PyTryBlock                  - no refs, untraversable<br>
- *   PyCallIter                    - Traverseproc (with call to super)<br>
- *   PyCell                        - Traverseproc<br>
- *   PyClass                       - Traverseproc<br>
- *   PyClassMethod                 - Traverseproc<br>
- *   PyClassMethodDescr            - no refs, untraversable<br>
- *   PyCode                        - no refs, abstract class<br>
- *   PyComplex                     - no refs, untraversable<br>
- *   PyCompoundCallable            - Traverseproc<br>
- *   PyDataDescr                   - no refs, untraversable<br>
- *   PyDescriptor                  - Traverseproc<br>
- *   PyDictionary                  - Traverseproc<br>
- *     ValuesIter                  - no refs, extends PyIterator<br>
- *     ItemsIter                   - no refs, extends PyIterator<br>
- *     PyMapKeyValSet              - no PyObject<br>
- *     PyMapEntrySet               - no PyObject<br>
- *   PyDictProxy                   - Traverseproc<br>
- *   PyEllipsis                    - no refs, untraversable<br>
- *   PyEnumerate                   - Traverseproc<br>
- *   PyFastSequenceIter            - Traverseproc<br>
- *   PyFile                        - Traverseproc<br>
- *   PyFileReader                  - no refs, untraversable<br>
- *   PyFileWriter                  - no refs, untraversable<br>
- *   PyFloat                       - no refs, untraversable<br>
- *   PyFrame                       - Traverseproc<br>
- *   PyFunction                    - Traverseproc<br>
- *   PyGenerator                   - Traverseproc (with call to super)<br>
- *   PyIndentationError            - no PyObject<br>
- *   PyInstance                    - Traverseproc<br>
- *   PyInteger                     - no refs, untraversable<br>
- *   PyIterator                    - Traverseproc<br>
- *   PyJavaPackage                 - Traverseproc<br>
- *   PyJavaType                    - Traverseproc (with call to super)<br>
- *     EnumerationIter             - no refs, extends PyIterator<br>
- *     ComparableMethod            - no refs, abstract class<br>
- *   PyList                        - Traverseproc<br>
- *   PyLong                        - no refs, untraversable<br>
- *   PyMemoryView                  - Traverseproc<br>
- *   PyMethod                      - Traverseproc<br>
- *   PyMethodDescr                 - Traverseproc<br>
- *   PyModule                      - Traverseproc<br>
- *   PyNewWrapper                  - Traverseproc<br>
- *   PyNone                        - no refs, untraversable<br>
- *   PyNotImplemented              - no refs, untraversable<br>
- *   PyObject                      - no refs (objtype is special case)<br>
- *     PyIdentityTuple             - Traverseproc<br>
- *   PyOverridableNew              - no refs, abstract class<br>
- *   PyProperty                    - Traverseproc<br>
- *   PyReflectedConstructor        - no refs, untraversable<br>
- *   PyReflectedField              - no refs, untraversable<br>
- *   PyReflectedFunction           - Traverseproc<br>
- *   PyReversedIterator            - Traverseproc (with call to super)<br>
- *   PySequence                    - no refs, abstract class (default Traverseproc implementation)<br>
- *   PySequenceIter                - Traverseproc (with call to super)<br>
- *   PySequenceList                - no refs, abstract class<br>
- *   PySingleton                   - no refs, untraversable<br>
- *   PySlice                       - Traverseproc<br>
- *   PySlot                        - no refs, untraversable<br>
- *   PyStaticMethod                - Traverseproc<br>
- *   PyString                      - no refs, untraversable (assuming baseBuffer is not a PyObject)<br>
- *   PyStringMap                   - Traverseproc<br>
- *     StringMapIter               - no refs, extends PyIterator, abstract class<br>
- *     ItemsIter                   - no refs, extends StringMapIter<br>
- *     KeysIter                    - no refs, extends StringMapIter<br>
- *     ValuesIter                  - no refs, extends StringMapIter<br>
- *   PySuper                       - Traverseproc<br>
- *   PySyntaxError                 - no PyObject<br>
- *   PySystemState                 - Traverseproc<br>
- *     PySystemStateFunctions      - no refs, untraversable<br>
- *     PyAttributeDeleted          - no refs, untraversable<br>
- *     FloatInfo                   - Traverseproc<br>
- *     LongInfo                    - Traverseproc<br>
- *   PyTableCode                   - no refs, untraversable<br>
- *   PyTraceback                   - Traverseproc<br>
- *   PyTuple                       - Traverseproc<br>
- *   PyType                        - Traverseproc<br>
- *   PyUnicode                     - no refs, untraversable<br>
- *   PyXRange                      - no refs, untraversable<br>
- *   PyXRangeIter                  - no refs, extends PyIterator<br>
- *   SyspathArchive                - no refs, untraversable<br>
+ *     JavaCode                      - Traverseproc<br>
+ *     JavaFunc                      - no refs, untraversable<br>
+ *   Py2kBuffer                      - no refs, untraversable<br>
+ *   PyArray                         - Traverseproc, traverses via reflection<br>
+ *   PyBaseCode                      - no refs, abstract class<br>
+ *   PyBaseException                 - Traverseproc<br>
+ *   PyBaseString                    - no refs, abstract class<br>
+ *   PyBeanEvent                     - no refs, untraversable<br>
+ *   PyBeanEventProperty             - no refs, untraversable<br>
+ *   PyBeanProperty                  - no refs, untraversable<br>
+ *   PyBoolean                       - no refs, untraversable<br>
+ *   PyBuffer                        - no PyObject<br>
+ *   PyBuiltinCallable               - no refs, untraversable<br>
+ *   PyBuiltinClassMethodNarrow      - no refs, abstract class<br>
+ *   PyBuiltinFunction               - no refs, untraversable<br>
+ *   PyBuiltinFunctionNarrow         - no refs, untraversable<br>
+ *   PyBuiltinFunctionSet            - no refs, untraversable<br>
+ *   PyBuiltinMethod                 - Traverseproc<br>
+ *   PyBuiltinMethodNarrow           - no refs, abstract class<br>
+ *   PyBuiltinMethodSet              - Traverseproc<br>
+ *   PyByteArray                     - no refs, untraversable<br>
+ *   PyBytecode                      - Traverseproc<br>
+ *     PyStackWhy                    - no refs, untraversable<br>
+ *     PyStackException              - Traverseproc<br>
+ *     PyTryBlock                    - no refs, untraversable<br>
+ *   PyCallIter                      - Traverseproc (with call to super)<br>
+ *   PyCell                          - Traverseproc<br>
+ *   PyClass                         - Traverseproc<br>
+ *   PyClassMethod                   - Traverseproc<br>
+ *   PyClassMethodDescr              - no refs, untraversable<br>
+ *   PyCode                          - no refs, abstract class<br>
+ *   PyComplex                       - no refs, untraversable<br>
+ *   PyCompoundCallable              - Traverseproc<br>
+ *   PyDataDescr                     - no refs, untraversable<br>
+ *   PyDescriptor                    - Traverseproc<br>
+ *   PyDictionary                    - Traverseproc<br>
+ *     ValuesIter                    - no refs, extends PyIterator<br>
+ *     ItemsIter                     - no refs, extends PyIterator<br>
+ *     PyMapKeyValSet                - no PyObject<br>
+ *     PyMapEntrySet                 - no PyObject<br>
+ *   PyDictProxy                     - Traverseproc<br>
+ *   PyEllipsis                      - no refs, untraversable<br>
+ *   PyEnumerate                     - Traverseproc<br>
+ *   PyFastSequenceIter              - Traverseproc<br>
+ *   PyFile                          - Traverseproc<br>
+ *   PyFileReader                    - no refs, untraversable<br>
+ *   PyFileWriter                    - no refs, untraversable<br>
+ *   PyFloat                         - no refs, untraversable<br>
+ *   PyFrame                         - Traverseproc<br>
+ *   PyFunction                      - Traverseproc<br>
+ *   PyGenerator                     - Traverseproc (with call to super)<br>
+ *   PyIndentationError              - no PyObject<br>
+ *   PyInstance                      - Traverseproc<br>
+ *   PyInteger                       - no refs, untraversable<br>
+ *   PyIterator                      - Traverseproc<br>
+ *   PyJavaPackage                   - Traverseproc<br>
+ *   PyJavaType                      - Traverseproc (with call to super)<br>
+ *     EnumerationIter               - no refs, extends PyIterator<br>
+ *     ComparableMethod              - no refs, abstract class<br>
+ *   PyList                          - Traverseproc<br>
+ *   PyLong                          - no refs, untraversable<br>
+ *   PyMemoryView                    - Traverseproc<br>
+ *   PyMethod                        - Traverseproc<br>
+ *   PyMethodDescr                   - Traverseproc<br>
+ *   PyModule                        - Traverseproc<br>
+ *   PyNewWrapper                    - Traverseproc<br>
+ *   PyNone                          - no refs, untraversable<br>
+ *   PyNotImplemented                - no refs, untraversable<br>
+ *   PyObject                        - no refs (objtype is special case)<br>
+ *     PyIdentityTuple               - Traverseproc<br>
+ *   PyOverridableNew                - no refs, abstract class<br>
+ *   PyProperty                      - Traverseproc<br>
+ *   PyReflectedConstructor          - no refs, untraversable<br>
+ *   PyReflectedField                - no refs, untraversable<br>
+ *   PyReflectedFunction             - Traverseproc<br>
+ *   PyReversedIterator              - Traverseproc (with call to super)<br>
+ *   PySequence                      - no refs, abstract class (default Traverseproc implementation)<br>
+ *   PySequenceIter                  - Traverseproc (with call to super)<br>
+ *   PySequenceList                  - no refs, abstract class<br>
+ *   PySingleton                     - no refs, untraversable<br>
+ *   PySlice                         - Traverseproc<br>
+ *   PySlot                          - no refs, untraversable<br>
+ *   PyStaticMethod                  - Traverseproc<br>
+ *   PyString                        - no refs, untraversable (assuming baseBuffer is not a PyObject)<br>
+ *   PyStringMap                     - Traverseproc<br>
+ *     StringMapIter                 - no refs, extends PyIterator, abstract class<br>
+ *     ItemsIter                     - no refs, extends StringMapIter<br>
+ *     KeysIter                      - no refs, extends StringMapIter<br>
+ *     ValuesIter                    - no refs, extends StringMapIter<br>
+ *   PySuper                         - Traverseproc<br>
+ *   PySyntaxError                   - no PyObject<br>
+ *   PySystemState                   - Traverseproc<br>
+ *     PySystemStateFunctions        - no refs, untraversable<br>
+ *     PyAttributeDeleted            - no refs, untraversable<br>
+ *     FloatInfo                     - Traverseproc<br>
+ *     LongInfo                      - Traverseproc<br>
+ *   PyTableCode                     - no refs, untraversable<br>
+ *   PyTraceback                     - Traverseproc<br>
+ *   PyTuple                         - Traverseproc<br>
+ *   PyType                          - Traverseproc<br>
+ *   PyUnicode                       - no refs, untraversable<br>
+ *   PyXRange                        - no refs, untraversable<br>
+ *   PyXRangeIter                    - no refs, extends PyIterator<br>
+ *   SyspathArchive                  - no refs, untraversable<br>
  * <br>
  * org.python.core.stringlib:<br>
- *   FieldNameIterator             - no refs, traverses via reflection<br>
- *   MarkupIterator                - no refs, untraversable<br>
+ *   FieldNameIterator               - no refs, traverses via reflection<br>
+ *   MarkupIterator                  - no refs, untraversable<br>
  * <br>
  * org.python.core.util:<br>
- *   importer                      - no refs, abstract class<br>
+ *   importer                        - no refs, abstract class<br>
  * <br>
  * org.python.jsr223:<br>
- *   PyScriptEngineScope           - no refs, untraversable<br>
- *     ScopeIterator               - Traverseproc<br>
+ *   PyScriptEngineScope             - no refs, untraversable<br>
+ *     ScopeIterator                 - Traverseproc<br>
  * <br>
  * org.python.modules:<br>
  *   _codecs:<br>
- *     EncodingMap                 - no refs, untraversable<br>
+ *     EncodingMap                   - no refs, untraversable<br>
  *   _hashlib:<br>
- *     Hash                        - no refs, untraversable<br>
+ *     Hash                          - no refs, untraversable<br>
  *   _marshal:<br>
- *     Marshaller                  - Traverseproc<br>
- *     Unmarshaller                - Traverseproc<br>
+ *     Marshaller                    - Traverseproc<br>
+ *     Unmarshaller                  - Traverseproc<br>
  *   cStringIO:<br>
- *     StringIO                    - no refs, extends PyIterator<br>
+ *     StringIO                      - no refs, extends PyIterator<br>
  *   operator:<br>
- *     OperatorFunctions           - no refs, untraversable<br>
- *     operator                    - no refs, untraversable<br>
- *     PyAttrGetter                - Traverseproc<br>
- *     PyItemGetter                - Traverseproc<br>
- *     PyMethodCaller              - Traverseproc<br>
- *   PyStruct                      - no refs, untraversable<br>
+ *     OperatorFunctions             - no refs, untraversable<br>
+ *     operator                      - no refs, untraversable<br>
+ *     PyAttrGetter                  - Traverseproc<br>
+ *     PyItemGetter                  - Traverseproc<br>
+ *     PyMethodCaller                - Traverseproc<br>
+ *   PyStruct                        - no refs, untraversable<br>
  *   synchronize:<br>
- *     SynchronizedCallable        - Traverseproc<br>
+ *     SynchronizedCallable          - Traverseproc<br>
  * <br>
  * org.python.modules._collections:<br>
- *   PyDefaultDict                 - Traverseproc (with call to super)<br>
- *   PyDeque                       - Traverseproc (assuming, Nodes can't build cycles)<br>
- *     PyDequeIter                 - Traverseproc (with call to super)<br>
+ *   PyDefaultDict                   - Traverseproc (with call to super)<br>
+ *   PyDeque                         - Traverseproc (assuming, Nodes can't build cycles)<br>
+ *     PyDequeIter                   - Traverseproc (with call to super)<br>
  * <br>
  * org.python.modules._csv:<br>
- *   PyDialect                     - no refs, untraversable<br>
- *   PyReader                      - Traverseproc (with call to super)<br>
- *   PyWriter                      - Traverseproc<br>
+ *   PyDialect                       - no refs, untraversable<br>
+ *   PyReader                        - Traverseproc (with call to super)<br>
+ *   PyWriter                        - Traverseproc<br>
  * <br>
  * org.python.modules._functools:<br>
- *   PyPartial                     - Traverseproc<br>
+ *   PyPartial                       - Traverseproc<br>
  * <br>
  * org.python.modules._io:<br>
- *   PyFileIO                      - no refs, untraversable (there is a final PyString
+ *   PyFileIO                        - no refs, untraversable (there is a final PyString
  *   "mode" that is guaranteed to be a PyString and no subclass; as such it needs not be
  *   traversed since it cannot have refs itself)<br>
- *   PyIOBase                      - Traverseproc<br>
- *   PyRawIOBase                   - no refs, extends PyIOBase<br>
+ *   PyIOBase                        - Traverseproc<br>
+ *   PyRawIOBase                     - no refs, extends PyIOBase<br>
  * <br>
  * org.python.modules._json:<br>
- *   Encoder                       - Traverseproc<br>
- *   Scanner                       - Traverseproc<br>
+ *   Encoder                         - Traverseproc<br>
+ *   Scanner                         - Traverseproc<br>
+ *   _json:
+ *     ScanstringFunction            - no refs, untraversable<br>
+ *     EncodeBasestringAsciiFunction - no refs, untraversable<br>
  * <br>
  * org.python.modules._jythonlib:<br>
- *   dict_builder                  - Traverseproc<br>     
+ *   dict_builder                    - Traverseproc<br>     
  * <br>
  * org.python.modules._threading:<br>
- *   Condition                     - Traverseproc<br>
- *   Lock                          - no refs, untraversable<br>
+ *   Condition                       - Traverseproc<br>
+ *   Lock                            - no refs, untraversable<br>
  * <br>
  * org.python.modules._weakref:<br>
- *   AbstractReference             - Traverseproc<br>
- *   ReferenceType                 - no refs, extends AbstractReference<br>
- *   ProxyType                     - no refs, extends AbstractReference<br>
- *   CallableProxyType             - no refs, extends ProxyType<br>
+ *   AbstractReference               - Traverseproc<br>
+ *   ReferenceType                   - no refs, extends AbstractReference<br>
+ *   ProxyType                       - no refs, extends AbstractReference<br>
+ *   CallableProxyType               - no refs, extends ProxyType<br>
  * <br>
  * org.python.modules.bz2:<br>
- *   PyBZ2Compressor               - no refs, untraversable<br>
- *   PyBZ2Decompressor             - Traverseproc<br>
- *   PyBZ2File                     - no refs, untraversable<br>
- *     BZ2FileIterator             - no refs, extends PyIterator<br>
+ *   PyBZ2Compressor                 - no refs, untraversable<br>
+ *   PyBZ2Decompressor               - Traverseproc<br>
+ *   PyBZ2File                       - no refs, untraversable<br>
+ *     BZ2FileIterator               - no refs, extends PyIterator<br>
  * <br>
  * org.python.modules.itertools:<br>
- *   chain                         - Traverseproc (with call to super)<br>
- *   combinations                  - Traverseproc (with call to super)<br>
- *   combinationsWithReplacement   - Traverseproc (with call to super)<br>
- *   compress                      - Traverseproc (with call to super)<br>
- *   count                         - Traverseproc (with call to super)<br>
- *   cycle                         - Traverseproc (with call to super)<br>
- *   dropwhile                     - Traverseproc (with call to super)<br>
- *   groupby                       - Traverseproc (with call to super)<br>
- *   ifilter                       - Traverseproc (with call to super)<br>
- *   ifiIterfalse                  - Traverseproc (with call to super)<br>
- *   imap                          - Traverseproc (with call to super)<br>
- *   islice                        - Traverseproc (with call to super)<br>
+ *   chain                           - Traverseproc (with call to super)<br>
+ *   combinations                    - Traverseproc (with call to super)<br>
+ *   combinationsWithReplacement     - Traverseproc (with call to super)<br>
+ *   compress                        - Traverseproc (with call to super)<br>
+ *   count                           - Traverseproc (with call to super)<br>
+ *   cycle                           - Traverseproc (with call to super)<br>
+ *   dropwhile                       - Traverseproc (with call to super)<br>
+ *   groupby                         - Traverseproc (with call to super)<br>
+ *   ifilter                         - Traverseproc (with call to super)<br>
+ *   ifiIterfalse                    - Traverseproc (with call to super)<br>
+ *   imap                            - Traverseproc (with call to super)<br>
+ *   islice                          - Traverseproc (with call to super)<br>
  *   itertools:<br>
- *     ItertoolsIterator           - no refs, extends PyIterator, abstract class<br>
- *     FilterIterator              - Traverseproc, extends ItertoolsIterator<br>
- *     WhileIterator               - Traverseproc, extends ItertoolsIterator
- *   izip                          - Traverseproc (with call to super)<br>
- *   izipLongest                   - Traverseproc (with call to super)<br>
- *   permutations                  - Traverseproc (with call to super)<br>
- *   product                       - Traverseproc (with call to super)<br>
- *   PyTeeIterator                 - Traverseproc (with call to super)<br>
- *   repeat                        - Traverseproc (with call to super)<br>
- *   starmap                       - Traverseproc (with call to super)<br>
- *   takewhile                     - Traverseproc (with call to super)<br>
+ *     ItertoolsIterator             - no refs, extends PyIterator, abstract class<br>
+ *     FilterIterator                - Traverseproc, extends ItertoolsIterator<br>
+ *     WhileIterator                 - Traverseproc, extends ItertoolsIterator
+ *   izip                            - Traverseproc (with call to super)<br>
+ *   izipLongest                     - Traverseproc (with call to super)<br>
+ *   permutations                    - Traverseproc (with call to super)<br>
+ *   product                         - Traverseproc (with call to super)<br>
+ *   PyTeeIterator                   - Traverseproc (with call to super)<br>
+ *   repeat                          - Traverseproc (with call to super)<br>
+ *   starmap                         - Traverseproc (with call to super)<br>
+ *   takewhile                       - Traverseproc (with call to super)<br>
  * <br>
  * org.python.modules.jffi:<br>
- *   ArrayCData                    - Traverseproc (with call to super; maybe check referenceMemory field whether it extends PyObject)<br>
- *     ArrayIter                   - no refs, extends PyIterator<br>
- *   BasePointer                   - no refs, abstract class<br>
- *   ByReference                   - no refs, untraversable (maybe check memory field whether it extends PyObject)<br>
- *   CData                         - Traverseproc (maybe check referenceMemory field whether it extends PyObject)<br>
- *   CType                         - no refs, abstract class<br>
- *   DynamicLibrary                - no refs, untraversable<br>
+ *   ArrayCData                      - Traverseproc (with call to super; maybe check referenceMemory field whether it extends PyObject)<br>
+ *     ArrayIter                     - no refs, extends PyIterator<br>
+ *   BasePointer                     - no refs, abstract class<br>
+ *   ByReference                     - no refs, untraversable (maybe check memory field whether it extends PyObject)<br>
+ *   CData                           - Traverseproc (maybe check referenceMemory field whether it extends PyObject)<br>
+ *   CType                           - no refs, abstract class<br>
+ *     Builtin                       - no refs, untraversable<br>
+ *   DynamicLibrary                  - no refs, untraversable<br>
  *   StructLayout:<br>
- *     Field                       - Traverseproc<br>
+ *     Field                         - Traverseproc<br>
  * <br>
  * org.python.modules.posix:<br>
  *   PosixModule:<br>
- *     FstatFunction               - no refs, untraversable<br>
- *     LstatFunction               - no refs, untraversable<br>
- *     StatFunction                - no refs, untraversable<br>
- *     WindowsStatFunction         - no refs, untraversable<br>
- *   PyStatResult                  - Traverseproc (with call to super)<br>
+ *     FstatFunction                 - no refs, untraversable<br>
+ *     LstatFunction                 - no refs, untraversable<br>
+ *     StatFunction                  - no refs, untraversable<br>
+ *     WindowsStatFunction           - no refs, untraversable<br>
+ *   PyStatResult                    - Traverseproc (with call to super)<br>
  * <br>
  * org.python.modules.random:<br>
- *   PyRandom                      - no refs, untraversable<br>
+ *   PyRandom                        - no refs, untraversable<br>
  * <br>
  * org.python.modules.sre:<br>
- *   MatchObject                   - Traverseproc<br>
- *   PatternObject                 - Traverseproc<br>
- *   ScannerObject                 - Traverseproc<br>
+ *   MatchObject                     - Traverseproc<br>
+ *   PatternObject                   - Traverseproc<br>
+ *   ScannerObject                   - Traverseproc<br>
  * <br>
  * org.python.modules.thread:<br>
- *   PyLocal                       - Traverseproc<br>
- *   PyLock                        - no refs, untraversable<br>
+ *   PyLocal                         - Traverseproc<br>
+ *   PyLock                          - no refs, untraversable<br>
  * <br>
  * org.python.modules.time:<br>
- *   PyTimeTuple                   - Traverseproc (with call to super)<br>
+ *   PyTimeTuple                     - Traverseproc (with call to super)<br>
  *   Time:<br>
- *     TimeFunctions               - no refs, untraversable<br>
+ *     TimeFunctions                 - no refs, untraversable<br>
  * <br>
  * org.python.modules.zipimport:<br>
- *   zipimporter                   - Traverseproc<br>
+ *   zipimporter                     - Traverseproc<br>
  * <br>
  * org.python.util:<br>
- *   InteractiveInterpreter        - no PyObject<br>
+ *   InteractiveInterpreter          - no PyObject<br>
  * <br>
  * com.ziclix.python.sql:<br>
- *   DBApiType                     - no refs, untraversable<br>
- *   PyConnection                  - Traverseproc<br>
- *     ConnectionFunc              - no refs, extends PyBuiltinMethodSet<br>
- *   PyCursor                      - Traverseproc<br>
- *     CursorFunc                  - no refs, extends PyBuiltinMethodSet<br>
- *   PyExtendedCursor              - no refs, extends PyCursor<br>
- *     ExtendedCursorFunc          - no refs, extends PyBuiltinMethodSet<br>
- *   PyStatement                   - Traverseproc (because Object sql could be a PyObject or Traverseproc)<br>
- *   zxJDBC                        - no refs, untraversable<br>
- *     zxJDBCFunc                  - no refs, untraversable<br>
+ *   DBApiType                       - no refs, untraversable<br>
+ *   PyConnection                    - Traverseproc<br>
+ *     ConnectionFunc                - no refs, extends PyBuiltinMethodSet<br>
+ *   PyCursor                        - Traverseproc<br>
+ *     CursorFunc                    - no refs, extends PyBuiltinMethodSet<br>
+ *   PyExtendedCursor                - no refs, extends PyCursor<br>
+ *     ExtendedCursorFunc            - no refs, extends PyBuiltinMethodSet<br>
+ *   PyStatement                     - Traverseproc (because Object sql could be a PyObject or Traverseproc)<br>
+ *   zxJDBC                          - no refs, untraversable<br>
+ *     zxJDBCFunc                    - no refs, untraversable<br>
  * <br>
  * com.ziclix.python.sql.connect:<br>
- *   Connect                       - no refs, untraversable<br>
- *   Connectx                      - no refs, untraversable<br>
- *   Lookup                        - no refs, untraversable<br>
+ *   Connect                         - no refs, untraversable<br>
+ *   Connectx                        - no refs, untraversable<br>
+ *   Lookup                          - no refs, untraversable<br>
  * <br>
  * com.ziclix.python.sql.util:<br>
- *   BCP                           - Traverseproc<br>
- *     BCPFunc                     - no refs, extends PyBuiltinMethodSet<br>
+ *   BCP                             - Traverseproc<br>
+ *     BCPFunc                       - no refs, extends PyBuiltinMethodSet<br>
  * <br>
  * org.python.antlr:<br>
  *   AnalyzingParser:<br>
- *     AnalyzerTreeAdaptor         - no PyObject<br>
- *   AST                           - no refs, untraversable<br>
- *   PythonErrorNode               - no refs, extends PythonTree<br>
- *   PythonTree                    - Traverseproc<br>
+ *     AnalyzerTreeAdaptor           - no PyObject<br>
+ *   AST                             - no refs, untraversable<br>
+ *   PythonErrorNode                 - no refs, extends PythonTree<br>
+ *   PythonTree                      - Traverseproc<br>
  * <br>
  * org.python.antlr.ast:<br>
- *   alias                         - no refs, extends PythonTree<br>
- *   arguments                     - Traverseproc (with call to super)<br>
- *   comprehension                 - Traverseproc (with call to super)<br>
- *   keyword                       - Traverseproc (with call to super)<br>
+ *   alias                           - no refs, extends PythonTree<br>
+ *   arguments                       - Traverseproc (with call to super)<br>
+ *   comprehension                   - Traverseproc (with call to super)<br>
+ *   keyword                         - Traverseproc (with call to super)<br>
  * <br>
  * org.python.antlr.base:<br>
- *   boolop                        - no refs, extends PythonTree<br>
- *   cmpop                         - no refs, extends PythonTree<br>
- *   excepthandler                 - no refs, extends PythonTree<br>
- *   expr_context                  - no refs, extends PythonTree<br>
- *   expr                          - no refs, extends PythonTree<br>
- *   mod                           - no refs, extends PythonTree<br>
- *   operator                      - no refs, extends PythonTree<br>
- *   slice                         - no refs, extends PythonTree<br>
- *   stmt                          - no refs, extends PythonTree<br>
- *   unaryop                       - no refs, extends PythonTree<br>
+ *   boolop                          - no refs, extends PythonTree<br>
+ *   cmpop                           - no refs, extends PythonTree<br>
+ *   excepthandler                   - no refs, extends PythonTree<br>
+ *   expr_context                    - no refs, extends PythonTree<br>
+ *   expr                            - no refs, extends PythonTree<br>
+ *   mod                             - no refs, extends PythonTree<br>
+ *   operator                        - no refs, extends PythonTree<br>
+ *   slice                           - no refs, extends PythonTree<br>
+ *   stmt                            - no refs, extends PythonTree<br>
+ *   unaryop                         - no refs, extends PythonTree<br>
  * <br>
  * org.python.antlr.op:<br>
- *   Add                           - no refs, extends PythonTree<br>
- *   And                           - no refs, extends PythonTree<br>
- *   AugLoad                       - no refs, extends PythonTree<br>
- *   AugStore                      - no refs, extends PythonTree<br>
- *   BitAnd                        - no refs, extends PythonTree<br>
- *   BitOr                         - no refs, extends PythonTree<br>
- *   BitXor                        - no refs, extends PythonTree<br>
- *   Del                           - no refs, extends PythonTree<br>
- *   Div                           - no refs, extends PythonTree<br>
- *   Eq                            - no refs, extends PythonTree<br>
- *   FloorDiv                      - no refs, extends PythonTree<br>
- *   Gt                            - no refs, extends PythonTree<br>
- *   GtE                           - no refs, extends PythonTree<br>
- *   In                            - no refs, extends PythonTree<br>
- *   Invert                        - no refs, extends PythonTree<br>
- *   Is                            - no refs, extends PythonTree<br>
- *   IsNot                         - no refs, extends PythonTree<br>
- *   Load                          - no refs, extends PythonTree<br>
- *   LShift                        - no refs, extends PythonTree<br>
- *   Lt                            - no refs, extends PythonTree<br>
- *   LtE                           - no refs, extends PythonTree<br>
- *   Mod                           - no refs, extends PythonTree<br>
- *   Mult                          - no refs, extends PythonTree<br>
- *   Not                           - no refs, extends PythonTree<br>
- *   NotEq                         - no refs, extends PythonTree<br>
- *   NotIn                         - no refs, extends PythonTree<br>
- *   Or                            - no refs, extends PythonTree<br>
- *   Param                         - no refs, extends PythonTree<br>
- *   Pow                           - no refs, extends PythonTree<br>
- *   RShift                        - no refs, extends PythonTree<br>
- *   Store                         - no refs, extends PythonTree<br>
- *   Sub                           - no refs, extends PythonTree<br>
- *   UAdd                          - no refs, extends PythonTree<br>
- *   USub                          - no refs, extends PythonTree<br>
+ *   Add                             - no refs, extends PythonTree<br>
+ *   And                             - no refs, extends PythonTree<br>
+ *   AugLoad                         - no refs, extends PythonTree<br>
+ *   AugStore                        - no refs, extends PythonTree<br>
+ *   BitAnd                          - no refs, extends PythonTree<br>
+ *   BitOr                           - no refs, extends PythonTree<br>
+ *   BitXor                          - no refs, extends PythonTree<br>
+ *   Del                             - no refs, extends PythonTree<br>
+ *   Div                             - no refs, extends PythonTree<br>
+ *   Eq                              - no refs, extends PythonTree<br>
+ *   FloorDiv                        - no refs, extends PythonTree<br>
+ *   Gt                              - no refs, extends PythonTree<br>
+ *   GtE                             - no refs, extends PythonTree<br>
+ *   In                              - no refs, extends PythonTree<br>
+ *   Invert                          - no refs, extends PythonTree<br>
+ *   Is                              - no refs, extends PythonTree<br>
+ *   IsNot                           - no refs, extends PythonTree<br>
+ *   Load                            - no refs, extends PythonTree<br>
+ *   LShift                          - no refs, extends PythonTree<br>
+ *   Lt                              - no refs, extends PythonTree<br>
+ *   LtE                             - no refs, extends PythonTree<br>
+ *   Mod                             - no refs, extends PythonTree<br>
+ *   Mult                            - no refs, extends PythonTree<br>
+ *   Not                             - no refs, extends PythonTree<br>
+ *   NotEq                           - no refs, extends PythonTree<br>
+ *   NotIn                           - no refs, extends PythonTree<br>
+ *   Or                              - no refs, extends PythonTree<br>
+ *   Param                           - no refs, extends PythonTree<br>
+ *   Pow                             - no refs, extends PythonTree<br>
+ *   RShift                          - no refs, extends PythonTree<br>
+ *   Store                           - no refs, extends PythonTree<br>
+ *   Sub                             - no refs, extends PythonTree<br>
+ *   UAdd                            - no refs, extends PythonTree<br>
+ *   USub                            - no refs, extends PythonTree<br>
  * </p>
  * @see org.python.core.Untraversable
  * @see org.python.core.Visitproc
diff --git a/src/org/python/modules/_json/_json.java b/src/org/python/modules/_json/_json.java
--- a/src/org/python/modules/_json/_json.java
+++ b/src/org/python/modules/_json/_json.java
@@ -11,6 +11,7 @@
 import org.python.core.PyTuple;
 import org.python.core.PyUnicode;
 import org.python.core.codecs;
+import org.python.core.Untraversable;
 import org.python.expose.ExposedGet;
 
 import java.util.Iterator;
@@ -78,6 +79,7 @@
         }
     }
 
+    @Untraversable
     static class ScanstringFunction extends PyBuiltinFunctionNarrow {
         ScanstringFunction() {
             super("scanstring", 2, 4, "scanstring");
@@ -305,6 +307,7 @@
         return new PyTuple(Py.EmptyUnicode.join(chunks), Py.newInteger(end));
     }
 
+    @Untraversable
     static class EncodeBasestringAsciiFunction extends PyBuiltinFunctionNarrow {
         EncodeBasestringAsciiFunction() {
             super("encode_basestring_ascii", 1, 1, "encode_basestring_ascii");
diff --git a/src/org/python/modules/jffi/CType.java b/src/org/python/modules/jffi/CType.java
--- a/src/org/python/modules/jffi/CType.java
+++ b/src/org/python/modules/jffi/CType.java
@@ -7,6 +7,7 @@
 import org.python.core.PyNewWrapper;
 import org.python.core.PyObject;
 import org.python.core.PyType;
+import org.python.core.Untraversable;
 import org.python.expose.ExposeAsSuperclass;
 import org.python.expose.ExposedGet;
 import org.python.expose.ExposedMethod;
@@ -81,6 +82,7 @@
         return t;
     }
 
+    @Untraversable
     static final class Builtin extends CType implements ExposeAsSuperclass {
         public Builtin(NativeType type) {
             super(type, MemoryOp.getMemoryOp(type));

-- 
Repository URL: https://hg.python.org/jython


More information about the Jython-checkins mailing list