SpacemanDMM/src/dreammaker
2021-07-14 18:28:48 -07:00
..
examples Add count-vars example 2020-03-31 17:14:46 -07:00
tests Fix in & ternary precedence (#260) 2021-05-17 23:43:01 -07:00
annotation.rs Replace String with Ident in some data definitions 2020-11-22 16:51:41 -08:00
ast.rs Support CRASH() with no arguments 2021-05-18 00:00:47 -07:00
builtins.rs Fix particles not actually being assumed to be particles (#275) 2021-07-15 00:04:02 +08:00
Cargo.toml Add 514 rgb() support (#254) 2021-03-18 21:56:05 -07:00
config.rs Add hide_invisible config and only-wires-and-pipes pass (#272) 2021-06-27 23:13:05 -07:00
constants.rs Add 514 rgb() support (#254) 2021-03-18 21:56:05 -07:00
dmi.rs Implement multiple suggested clippy lints (#213) 2020-10-04 11:56:59 -07:00
docs.rs Add dm_ref attributes to some builtins 2020-12-13 15:47:16 -08:00
error.rs Track disk I/O time separately from parse time 2021-03-11 19:24:14 -08:00
indents.rs Remove HasLocation implementation from IndentProcessor 2019-12-07 23:36:12 -08:00
lexer.rs Count SafeLBracket in string interpolations 2021-07-14 18:28:48 -07:00
lib.rs Show full #define body in completion details 2020-07-03 17:24:54 -07:00
objtree.rs Add dm_ref attributes to some builtins 2020-12-13 15:47:16 -08:00
parser.rs Support CRASH() with no arguments 2021-05-18 00:00:47 -07:00
preprocessor.rs Replace String with Ident in some data definitions 2020-11-22 16:51:41 -08:00
README.md Add a readme for the dreammaker crate 2019-07-02 20:35:20 -07:00

dreammaker library

This library crate implements a parser for the DreamMaker language. It is a core component of SpacemanDMM and powers the rest of the tooling.

Diagnostics

  • Preprocessor:
    • Redefining a macro which is already defined.
    • Undefining a macro which is not defined.
    • Unterminated conditional blocks (#if/#ifdef).
    • Using a define in a buggy context.
  • Language:
    • Incorrect or correct-but-strange syntax.
    • Non-constant initial values for object variables.
    • Integer constants which are outside of range.