Package-level declarations

Types

Link copied to clipboard

How every file this mod writes is published: built under a staging name, then renamed into place. Its readers decide by existence — a cache hit, a config file — so a path must never hold a half-written file; and the cache files stay OPEN for the process (the masking loader's urls, the symbol jars the compiler indexes), so a rewrite must not truncate what a reader still holds.

Link copied to clipboard
object CacheLock

One MCP per game dir — the cross-process half of CommonClass's in-JVM claim. Two instances sharing a cache dir rewrite each other's jars while the other still holds them open, so the loser starts nothing.

Link copied to clipboard
Link copied to clipboard
object ConfigFile

Props' lowest-priority source: a JSON object whose keys ARE the -D property names, so the flag tables in the README are its whole schema and there is no second vocabulary to keep in step.

Link copied to clipboard
object Constants
Link copied to clipboard
object Props

One setting, resolved across three sources and then parsed: -D beats the environment beats ConfigFile — explicit for this launch, then ambient, then persisted. At every source a value that trims to empty counts as unset and falls through, so a blank env var (what an unrendered compose template leaves behind) cannot shadow the file.