Expand description
Core type system, storage, tokenizer, and runtime context for the stet PostScript interpreter.
This crate provides the PostScript VM building blocks: PsObject /
PsValue, the interpreter Context (operand /
execution / dictionary stacks, graphics state, VM stores), the arena-
backed StringStore / ArrayStore / DictStore with copy-on-write
save/restore semantics, the NameTable name-interning system, the PS
tokenizer, the OutputDevice trait, file
handles, and the error hierarchy.
Most users should use the stet facade
crate rather than depending on stet-core directly. Pull this crate in
only when you need to build alternative PS-interpreter tooling or
implement a custom OutputDevice.
See the Architecture Guide for how this crate fits into the broader workspace.
Modules§
- agl
- Adobe Glyph List (AGL) — glyph name → Unicode mapping.
- array_
store - Storage for PostScript array contents.
- binary_
token - Binary token and binary object sequence parser (PLRM §3.14).
- cff_
parser - CFF (Compact Font Format) binary parser.
- charstring
- Type 1 charstring interpreter.
- color
- Color types and CIE color space parameters.
- context
- Execution context: stacks, storage, operator table, and state.
- device
- Output device trait — abstraction boundary for rendering backends.
- dict
- PostScript dictionary storage.
- display_
list - Display list — records drawing operations for deferred replay to a device.
- dual_
array_ store - Dual-arena array storage: routes to global or local
ArrayStorebased on the tag bit inEntityId. - dual_
dict_ store - Dual-arena dictionary storage: routes to global or local
DictStorebased on the tag bit inEntityId. - dual_
string_ store - Dual-arena string storage: routes to global or local
StringStorebased on the tag bit inEntityId. - encoding
- PostScript standard encoding tables.
- entity_
table - Entity table: indirection layer for arena stores.
- eps
- EPS file support: DOS binary header stripping and BoundingBox parsing.
- error
- PostScript error types.
- file_
store - File handle storage for PostScript file I/O.
- font_
loader - Font loading pipeline.
- geometry
- Geometry types: affine transform matrices, path segments, and paths.
- glyph_
cache - Glyph path cache: caches charstring interpretation results per font.
- graphics_
state - Graphics state: transforms, paths, colors, and rendering parameters.
- icc
- ICC color profile support via moxcms.
- mesh_
shading - Binary mesh and patch parsers for shading Types 4-7.
- name
- Name interning table.
- object
- PostScript object representation.
- save_
stack - Save/restore stack for PostScript VM persistence.
- stack
- PostScript operand and execution stacks.
- string_
store - Contiguous byte buffer for PostScript string storage.
- system_
font_ loader - System font loading: TTF/OTF → PostScript font dictionaries.
- system_
fonts - System font discovery and caching.
- tokenizer
- PostScript tokenizer.
- truetype
- TrueType (Type 42) glyph parser and path converter.
- type1_
parser - Type 1 font file (.t1) parser.
- type2_
charstring - Type 2 charstring interpreter for CFF fonts.
- vm_
audit - Audit global VM for PLRM 3.7.2 violations.