| 14 | |
| 15 | These modules offer translation support for external java libraries. For instance jackson is an external library to translate json to java; the jackson-t library translates jackson-based code and annotations into pyson-based python code. |
| 16 | |
| 17 | You can easily extend the standard core translator with these plugin translators by just importing these plugins in your java project. Just make sure that they are all based on the same core version. |
| 18 | |
| 19 | |
| 20 | == Internal mechanism |
| 21 | There are two main components in the core: |
| 22 | 1. The translator that parses java code and creates equivalent python code |
| 23 | 2. per-java-class translators that know how to translate a specific call to a java class function or field into equivalent python code. |
| 24 | |
| 25 | The first is generic and used for all java programs. It is currently pretty complete but details will be filled in over time as the need arises to support more java syntax. |
| 26 | |
| 27 | The second is currently very partial. The reason is that there are a huge number of java classes, and every field and function in it will need a specialized translator. This will grow slowly over time as needed. |