Skip to main content

Crate foch_annotation

Crate foch_annotation 

Source
Expand description

Foch annotations: extra meaning carried in EU4 script comments.

An annotation such as #test(time=1444.11.11, tag=SWE) is an ordinary comment to the game, so an annotated mod stays a valid mod that EU4 loads without any Foch step. This crate only reads annotations; it never changes script that the game loads. Extensions that need compiling into native script belong elsewhere.

Each annotation is described by an AnnotationSchema, plain data that drives validation, completion, hover and help alike. Consumers such as the test runner give annotations their meaning; editors need only this crate.

Re-exports§

pub use diagnostic::Code;
pub use diagnostic::Diagnostic;
pub use diagnostic::Severity;
pub use extract::Annotation;
pub use extract::Applied;
pub use extract::Attachment;
pub use extract::Extraction;
pub use extract::Target;
pub use extract::extract;
pub use extract::extract_parsed;
pub use schema::AnnotationSchema;
pub use schema::Registry;

Modules§

builtin
Annotations Foch understands.
diagnostic
Problems in annotations, located in the original source.
editor
Completion and hover inside annotation comments.
extract
Find annotations in comments and attach them to the next definition.
schema
What each annotation accepts, as plain data shared by validation, completion, hover and command-line help.
source
Mod-relative paths and positions inside source text.
value
Typed annotation values.