Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sbcgua/abap_include_assembler

A tool to statically include includes into the main program
https://github.com/sbcgua/abap_include_assembler

abap

Last synced: 9 days ago
JSON representation

A tool to statically include includes into the main program

Awesome Lists containing this project

README

        

# ABAP Include Assembler

*Version: 0.1.0*
*[History of changes](/changelog.txt)*

## Contents

- [Synopsis](#synopsis)
- [Technical design and reuse possibilities](#technical-design-and-reuse-possibilities)
- [Installation](#installation)
- [License](#license)

## Synopsis

A tool to statically include includes, interfaces and classes into the main program. Can be useful to publish easy-to-install single-file code while still enjoying nice code structure in dev environment.

![illustration1](img/illustration_small.png)

You develop your program with as many includes/classes as you want. Then run the include assembler and it builds you a single-file program which you publish or deploy.

The result can be saved to a file or to **another program** or just shown on screen. "Another program" remains inactive after update. Only includes from the same dev-package as the main program are assembled.

The tool also supports **classes and interfaces** (with local definitions/implementations and macros). You can specify multiple of those. The order or serialization will be automatically detected (dependency related).

![illustration2](img/sel_screen.png)

Examples of assembled code can be seen [here (for includes)](src/examples/zis_example_assembled.prog.abap) and [here (for OO)](src/examples/zis_example_clas_assembled.prog.abap).

## Installation

Installed with [AbapGit](https://github.com/abapGit/abapGit).

## License and attribution

- The code is licensed under MIT License. Please see [LICENSE](/LICENSE) for details.
- The code reuses fragments of [abapGit](https://github.com/abapGit/abapGit) code