This project contains an interpreter for the RPG programming language. This interpreter runs on the JVM since it's written in Kotlin.
All information for developers is contained in the Development guide.
The project supports configurable logging, described in a separate document.
RPG Unit tests: the MUTE mechanism
We support special annotations to be used to write unit tests in RPG. For details see this document.
MUTEs and Visual Studio Code
You can run MUTE tests in Visual Studio Code: see the documentation
How the repository is organized
- generated-src contains the code generated from the grammar
- gradle, gradlew, and gradlew.bat contain the gradle wrapper
- src contains the source code for the project and the tests
- out, and build contain temporary files
- misc contains utilities for downloading sources from AS400 (for example this ruby script)
- misc/docker: support for Docker, see instructions
- docs contains documentation
How to use this code in your project
If you use Maven, add these lines to your pom.xml in order to add the repository
<repositories> <repository> <id>jitpack.io</id> <url>https://jitpack.io</url> </repository> </repositories>
Then add the following dependencies for the core library:
<dependency> <groupId>com.github.smeup.smeup-rpg</groupId> <artifactId>rpgJavaInterpreter-core</artifactId> <version>-SNAPSHOT</version> </dependency>
And this if you want to include the examples too:
<dependency> <groupId>com.github.smeup.smeup-rpg</groupId> <artifactId>examples</artifactId> <version>-SNAPSHOT</version> </dependency>
Side note for maven users who use mirrors: remember to change your .m2/settings.xml with settings like this:
<mirrors> <mirror> <id>myNexus</id> <mirrorOf>!jitpack.io,*</mirrorOf>
Some RPG Examples are from Claudio Neroni
Another source for good examples is go4as400