LibJF/docs/libjf-base.md

15 lines
923 B
Markdown
Raw Permalink Normal View History

2022-01-05 11:54:03 +01:00
# libjf-base
libjf-base is a dependency of all other modules and provides common functionality between them.
It has no dependencies.
It includes:
- a Gson strategy to ignore fields annotated with GsonHidden, ClientOnly and ServerOnly
2022-01-05 11:54:03 +01:00
- LazySupplier, a supplier that caches the result of another supplier to which it delegates
- ThrowingRunnable and ThrowingSupplier, counterparts of their default lambdas which allow exceptions
2022-02-12 12:16:19 +01:00
- a "flags" system to allow dynamically enabling LibJF features through system properties and fabric.mod.json
2022-01-05 11:54:03 +01:00
- a shared logger and Gson instance
- the ResourcePath abstraction to describe locations of resources as simple strings
2022-02-12 12:16:19 +01:00
- the CoProcess system used internally to control threads separate from the game thread
2022-03-25 19:13:24 +01:00
- an HTTP abstraction from Inceptum
2022-01-05 11:54:03 +01:00
All of these are implemented in one reusable class (except the Gson strategy, whose annotation is separate), which should be simple to read