Skip to content
SilverIce edited this page Dec 26, 2014 · 36 revisions

What is JContainers?

JContainers (JSON Containers or just JC) is data structures framework for Skyrim, an SKSE plugin. Implements JSON data structures (containers). JContainers features:

  • Array container - collection of a values (value is any number, text, form or another container). Unlike stock Papyrus array, single JC's array (JArray) can contain any kind of value, can be resized, searched and etc
  • Associative containers (maps) - stores elements formed by a combination of a key value and a mapped value. JMap's keys are strings, JFormMap's keys are forms.
  • Trees, graphs of data structures - any combinations of connections between containers are possible.
  • Path resolving - simplifies an access to nested container's data.
  • Export or import a whole graph or tree into or from a JSON file.
  • Lua (in progress) - embedded Lua. It's role, purpose is the same as the purpose of SQL.
  • Threadsafe - it's safe to modify or read from a container simultaneously from a multiple scripts (threads) and the container will still be in a consistent state.

Further reading