https://github.com/ericdallo/asm4clj
Java ASM used in Clojure with GraalVM
https://github.com/ericdallo/asm4clj
Last synced: 2 months ago
JSON representation
Java ASM used in Clojure with GraalVM
- Host: GitHub
- URL: https://github.com/ericdallo/asm4clj
- Owner: ericdallo
- Created: 2023-02-05T15:45:18.000Z (almost 3 years ago)
- Default Branch: master
- Last Pushed: 2023-02-05T15:49:39.000Z (almost 3 years ago)
- Last Synced: 2024-12-27T22:18:23.276Z (about 1 year ago)
- Language: Clojure
- Size: 6.84 KB
- Stars: 0
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# asm4clj
A sample to use ASM from Clojure to generate data from compiled classes.
## Build
`clj -T:build native-cli`
## Run
`./asm4clj /path/to/Foo.class`
Example:
```clojure
;; ./asm4clj src-java/asm4clj/Foo.class
{:bases #{java.lang.Object},
:flags #{:public},
:members
#{{:name toString,
:return-type java.lang.String,
:declaring-class src-java/asm4clj/Foo.class,
:parameter-types [],
:exception-types [],
:flags #{:public}}
{:name run,
:return-type void,
:declaring-class src-java/asm4clj/Foo.class,
:parameter-types [java.lang.String java.lang.String],
:exception-types [],
:flags #{:public}}
{:name other,
:type java.lang.String,
:declaring-class src-java/asm4clj/Foo.class,
:flags #{:private}}
{:name src-java/asm4clj/Foo.class,
:declaring-class src-java/asm4clj/Foo.class,
:parameter-types [],
:exception-types [],
:flags #{:public}}
{:name some,
:type int,
:declaring-class src-java/asm4clj/Foo.class,
:flags #{:private}}}}
```