Commit Graph

631 Commits

Author SHA1 Message Date
Collin Chin
1a39ae93ca
Use matches macro 2020-10-27 10:06:50 -07:00
collin
46f585e2ff refactor compiler methods 2020-10-27 00:31:36 -07:00
collin
52810588ff refactor modules and make function names more clear 2020-10-26 23:42:01 -07:00
collin
fe79cfcf71 merge master 2020-10-26 22:05:03 -07:00
collin
d3125a0f9f add new dynamic check errors and tests for variables 2020-10-26 18:41:51 -07:00
collin
9024fb0968 remove unused code 2020-10-26 17:52:32 -07:00
collin
020773fb2a impl dynamic checks for imports. all tests pass 2020-10-26 16:05:02 -07:00
collin
09d86576ea add import parsing to first pass of static check 2020-10-26 15:51:46 -07:00
collin
b3c140d5bb fix array function input bug 2020-10-26 13:14:36 -07:00
collin
9bae1037f7 fix core package tests 2020-10-26 12:55:00 -07:00
collin
9933b8e336 impl dynamic checks for core packages 2020-10-26 12:24:24 -07:00
collin
54bf6ca42d load program input type into symbol table 2020-10-24 23:57:38 -07:00
collin
17a65fe54a add dynamic check errors for circuits 3 2020-10-24 19:27:30 -07:00
collin
6e124e52ff add dynamic check errors for statements 2020-10-24 17:01:40 -07:00
collin
22d6c98c77 add dynamic check errors for functions 2020-10-24 16:50:07 -07:00
collin
e19616b4e5 add dynamic check errors for circuits 2 2020-10-24 13:07:27 -07:00
collin
973e2a6afc add dynamic check errors for circuits 1 2020-10-24 02:53:09 -07:00
collin
8e75e36532 manually impl PartialEq for array types 2020-10-23 21:54:19 -07:00
collin
f2a808cbe7 impl membership type assertion error handling 2020-10-23 17:31:41 -07:00
collin
dbade1f4fe fix mismatched types test 2020-10-23 17:00:11 -07:00
collin
4aab804148 add type variable for implicit addresses 2020-10-23 15:52:43 -07:00
collin
f1490a994b impl dynamic check errors 2020-10-23 15:23:48 -07:00
ljedrz
4ccc9c31db perf: reduce format!-related allocations and move them to closures where possible
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 17:36:26 +02:00
ljedrz
e5f47b8254 perf: make Address is_constant method faster
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-22 09:36:08 +02:00
ljedrz
7443bffc00 clippy: unbox some arguments
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-21 11:16:24 +02:00
ljedrz
5e4f799685 clippy: remove a few redundant clones
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-21 11:14:27 +02:00
Collin Chin
61556cca29
Merge pull request #399 from ljedrz/boxing_improvements
Boxing improvements
2020-10-21 02:10:18 -07:00
collin
3870cf785d fix box accesses 2020-10-21 01:32:09 -07:00
collin
8ea2735caa fix string references 2020-10-21 01:15:12 -07:00
collin
c9e044d3c3 cargo fmt 2020-10-21 01:05:56 -07:00
Collin Chin
33d4da7ad5
Merge branch 'master' into alloc_hunting 2020-10-21 01:05:24 -07:00
Collin Chin
bf77207918
Merge branch 'master' into boxing_improvements 2020-10-21 01:03:38 -07:00
Collin Chin
3c0409da16
Merge branch 'master' into boxing_improvements 2020-10-21 00:51:49 -07:00
Collin Chin
e06e9b9ce6
Merge branch 'master' into alloc_hunting 2020-10-21 00:51:22 -07:00
collin
7c9a5ad8aa fix reference error 2020-10-21 00:19:30 -07:00
Collin Chin
d2dcf65b68
Merge branch 'master' into type_tweaks 2020-10-20 22:29:23 -07:00
collin
f30f615655 impl dynamic checker definition statements 2020-10-20 13:14:16 -07:00
ljedrz
49e9a48d90 perf: reduce boxing in typed objects
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-20 11:49:28 +02:00
ljedrz
c8299743b8 perf: reduce Expression size from 244B to 152B
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-19 16:23:36 +02:00
ljedrz
4591a0eb04 refactor: use &Path instead of (&)PathBuf in tests 2020-10-16 17:23:22 +02:00
ljedrz
64774cdab6 refactor: accept &Path instead of PathBuf where sufficient
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 17:09:44 +02:00
ljedrz
d662b9a236 perf: use Cow to avoid some PathBuf allocations
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 16:51:58 +02:00
ljedrz
f59416be1b refactor: pass &Path instead of &PathBuf as arguments
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 16:18:46 +02:00
ljedrz
790f1c472a perf: don't allocate PathBufs for the purposes of PathBuf::push
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 15:52:45 +02:00
ljedrz
69d35063f2 perf: use .to_string() instead of single-param format!
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 15:52:45 +02:00
ljedrz
529d87bc88 perf: remove some generic unnecessary allocations
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-16 15:52:45 +02:00
collin
323992696c use typed assignee access 2020-10-15 18:11:39 -07:00
ljedrz
970f808290 perf: refactor a lot of the compiler so that Spans and Strings are rarely cloned
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-15 18:19:34 +02:00
ljedrz
e1e22a2310 perf: vector pre-allocation and associated tweaks
Signed-off-by: ljedrz <ljedrz@gmail.com>
2020-10-08 11:47:03 +02:00
collin
effdfc7628 add leo dynamic check module 2020-10-06 17:20:51 -07:00