Tad Hardesty
e202ed0a42
Add extra location notes to must_not_override and must_call_parent
2019-11-27 21:21:37 -08:00
spookydonut
07cc99c81a
Add should_not_override proc setting to dreamchecker ( #114 )
...
This is meant to add a linter hint to prevent procs being overridden.
I hope to also add something similar for variables.
This is basically `final` in other languages.
2019-11-27 21:15:49 -08:00
Tad Hardesty
685f087531
Remove unused #[allow(dead_code)] attributes
2019-11-11 19:58:08 -08:00
Tad Hardesty
e6c132d12b
Bump versions for suite 1.1
2019-11-08 20:37:06 -08:00
Tad Hardesty
7fc9ae2412
Handle TRUE and FALSE constants in should_call_parent
...
Broken during the change of TRUE and FALSE from macros to const vars, so
the preprocessor doesn't transform them anymore and this argument isn't
currently const-evalauted.
Solved for now by handling the "TRUE" and "FALSE" idents specially.
Fixes #106 .
2019-11-07 18:55:38 -08:00
Tad Hardesty
316ddb286a
Fix builtins incorrectly inheriting from /datum
...
The /list, /savefile, /world, and /client types now only declare the
subset of vars and procs they share with /datum. The /list, /savefile,
and /world types reject attempts to modify their parent_type.
Fixes #98 .
2019-11-06 21:53:13 -08:00
Tad Hardesty
424731084e
Update dependency versions
2019-11-06 18:48:34 -08:00
Tad Hardesty
44c6f818fb
Add command-line arguments to dreamchecker
2019-09-29 13:00:50 -07:00
Tad Hardesty
f24e8d25a2
Fix crash when commenting on the global level
2019-09-28 18:31:14 -07:00
Tad Hardesty
fb133cb7c5
Bump command-line tools to 1.0.0
2019-07-03 13:45:34 -07:00
Tad Hardesty
2f4ed73d94
Add a readme for the dreammaker crate
2019-07-02 20:35:20 -07:00
Tad Hardesty
30b78983d0
Rewrite DreamChecker's readme
2019-07-02 20:22:24 -07:00
Tad Hardesty
fba51ebb9a
Fix 'never calls parent' error having no component
2019-07-02 20:20:54 -07:00
Tad Hardesty
f9f830ea92
Update dependency versions
...
Updates git2, rand, jsonrpc-core, lsp-types, pulldown-cmark.
2019-07-02 00:26:02 -07:00
Tad Hardesty
6826974133
Add dreamchecker --version with commit and build date
2019-06-30 15:17:16 -07:00
Tad Hardesty
cb31916ca0
Add ConstFn::File
2019-06-29 17:59:17 -07:00
Tad Hardesty
f2da6c1d3a
Add fix hints for proc calls and return types
2019-06-26 14:32:35 -07:00
Tad Hardesty
a14e2be2ef
Add 'fix hint' for list type annotations
2019-06-26 14:24:06 -07:00
Tad Hardesty
e730a1e0a6
Improve messaging in the type expr compiler
2019-06-26 02:31:32 -07:00
Tad Hardesty
e931d94c15
Include a constant in the Analysis for prefabs
2019-06-25 22:42:20 -07:00
Tad Hardesty
ebbe056944
Handle .type and L[].type analyses
2019-06-25 01:12:47 -07:00
Tad Hardesty
180f431e07
Pass argument Analysis to TypeExpr::evaluate
2019-06-24 22:30:12 -07:00
Tad Hardesty
ae92ec4772
Implement TypeExprCompiler::visit_follow
2019-06-24 21:58:54 -07:00
Tad Hardesty
f77b8dc70a
Add further type expression structure
2019-06-24 21:41:25 -07:00
Tad Hardesty
5ed88c420c
Add stub for return type expressions
2019-06-24 20:42:11 -07:00
Tad Hardesty
3a08659f96
Add list of known built-in proc settings
2019-06-24 20:24:25 -07:00
Tad Hardesty
46bd2f0433
Add unlint expression escape hatch
2019-06-24 19:43:34 -07:00
Tad Hardesty
7ca628b4d4
Add warnings for misuse of 'set spacemandmm_' statements
2019-06-24 19:42:05 -07:00
Tad Hardesty
0c0ff4d093
Add must_call_parent checking
2019-05-08 15:56:51 -07:00
Tad Hardesty
8676b7e8b5
Set return type of get_step to /turf
2019-05-06 18:39:29 -07:00
Tad Hardesty
93b2a564f4
Remove Type
2019-05-06 18:24:35 -07:00
Tad Hardesty
4cc6dbfada
Replace Analysis::from(Type) with ::from(AssumptionSet)
2019-05-06 00:56:30 -07:00
Tad Hardesty
d1e0055f7c
Consider types and paths truthy
2019-05-05 23:51:44 -07:00
Tad Hardesty
ab1e839b4a
Replace Type with AssumptionSet in Analysis
2019-05-05 23:48:59 -07:00
Tad Hardesty
f820fb1b0e
Add AssumptionSet::from_constant
2019-04-30 00:12:23 -07:00
Tad Hardesty
778e96a554
Add beginning of simplified Assumption system
2019-04-29 23:54:06 -07:00
Tad Hardesty
2364009fd9
Add additional Type to allow is_truthy
2019-04-09 22:36:20 -07:00
Tad Hardesty
603c28efaf
Add isX helpers to Type
2019-04-04 23:33:37 -07:00
Tad Hardesty
6ebde3d5f9
Store a set of types in Analysis, not just one
2019-04-04 23:21:09 -07:00
Tad Hardesty
c68a3c1a94
Remove checker Type::List in favor of Instance(/list)
2019-04-04 23:13:07 -07:00
Tad Hardesty
e2fe78c7b4
Add a span to the Follows in Expression::Base
2019-03-28 23:33:48 -07:00
Tad Hardesty
fd3b411e9d
Add a span to the Term in Expression::Base
2019-03-28 23:27:57 -07:00
Tad Hardesty
dbb8e95ea5
Fix DreamChecker skipping list, locate, input, pick, call
2019-03-21 18:31:35 -07:00
Tad Hardesty
7717158681
Rearrange visit_term in DreamChecker
2019-03-21 17:50:04 -07:00
Tad Hardesty
b250163eef
Parse goto statements
2019-03-19 21:16:08 -07:00
Tad Hardesty
dd62d8fd1b
Add filter() as a constant function
2019-03-19 17:50:08 -07:00
Tad Hardesty
ec101e2014
Add first version of return type annotation
2019-03-19 17:08:18 -07:00
Tad Hardesty
6aee4d7ee1
Stop debugging Analysis on untyped proc call
2019-03-17 18:37:00 -07:00
Tad Hardesty
21364cc79e
Handle try/catch variables in DreamChecker
2019-03-17 18:36:55 -07:00
Tad Hardesty
667b5a16bd
Visit the arguments of :calls()
2019-03-15 21:28:39 -07:00