Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/zsr2531/bali

A fast and lightweight .Net library for reading and writing .class files.
https://github.com/zsr2531/bali

binary class csharp dotnet format java

Last synced: 1 day ago
JSON representation

A fast and lightweight .Net library for reading and writing .class files.

Awesome Lists containing this project

README

        



Bali
====

[![License](https://img.shields.io/github/license/zsr2531/Bali?style=for-the-badge&logo=internet-archive)](https://github.com/zsr2531/Bali/tree/master/LICENSE)
[![Docs](https://img.shields.io/badge/docs-Docfx-blueviolet?style=for-the-badge&logo=read-the-docs)](https://zsr2531.github.io/Bali/api)
[![Nuget (with prereleases)](https://img.shields.io/nuget/vpre/Bali?style=for-the-badge&logo=nuget)](https://www.nuget.org/packages/Bali)
[![Nuget](https://img.shields.io/nuget/dt/Bali?color=blue&style=for-the-badge&logo=nuget)](https://www.nuget.org/packages/Bali)

A fast and lightweight .Net library to read and write Java .class files.

Features
--------

- Low memory footprint, the library doesn't allocate much from the heap.
- Provides low level access to the constant pool.
- Handles Java's "modified UTF-8" encoding correctly, unlike many other libraries out there.
- High level representation of the class file. *(todo)*
- Ability to read .jar files. *(todo)*

Why `Bali`?
-----------

> The island of Bali lies 3.2 km (2.0 mi) east of Java.

...

Want to contribute?
-------------------

If you wish to contribute, I will gladly appreciate it. You can read the contributing guidelines and a few small tips [here](CONTRIBUTING.md).

External libraries used
-----------------------

- [CodeGenHelpers](https://github.com/dansiegel/CodeGenHelpers) (MIT License): Used only for aiding source generation.

Disclaimer
----------

The library is still under heavy development.