Matthew Kennedy
4f9df2a110
new parser handles enum values ( #3492 )
...
* simplify
* poke to force generate
* enums
* jar
* jar
* poke
* prepends formatted
* prepends
* eol
* eol
* allow no endl at eof
* Revert "eol"
This reverts commit 022029faef338281b1a3551f82e46c4b6a7578a5.
* Revert "eol"
This reverts commit 6274502db740569235210916fde4ec84863d7fb3.
2021-11-11 23:09:39 -05:00
Matthew Kennedy
e7f8b0d938
TS parser improvements, compatibility ( #3479 )
...
* scalar layout
* wrong name in comments
* better compatibility for tooltips starting with + or not
* s
* sort of handle signature
* only strip nested
* new parse can mostly read signature
* oops
* jar
* jar
2021-11-06 18:17:03 -04:00
Matthew Kennedy
ec5d3f437f
Remove array typedef syntax ( #3477 )
...
* remove array typedef support completely
* extraneous semicolon
* binary
2021-11-06 09:12:43 -04:00
Scott Smith
61fd669add
Convert existing tables to use the simpler 3d table definition style in rusefi_config.txt ( #3473 )
...
This fixes #3465 .
2021-11-05 21:55:33 -04:00
Scott Smith
2ffcc2bb45
Determine the correct mul/div for autoscale from the TS config line instead of specifying it twice. ( #3470 )
2021-11-05 19:26:25 -04:00
Scott Smith
09569e8686
Add 3d table support to the java config file parser. ( #3464 )
...
This removes the need to use custom for 3d tables. Syntax (to avoid changing the ANTLR parser) is
to use 'x' instead of separate [], i.e.:
uint16_t[HPFP_TARGET_SIZE x HPFP_TARGET_SIZE] hpfpTarget;;"kPa", 1, 0, 0, 65000, 0
2021-11-05 14:27:32 -04:00
Matthew Kennedy
4717210859
autoscale fields in generated structs ( #3444 )
...
* add to grammar
* parser
* parser
* example consumer
* build config tool
* commit the right jar
2021-11-02 18:59:19 -04:00
rusefillc
1de473ed2d
https://rusefi.com/forum/viewtopic.php?f=19&t=2177
2021-10-28 13:11:32 -04:00
rusefillc
4fe780bbbb
https://rusefi.com/forum/viewtopic.php?f=19&t=2177
2021-10-28 12:40:34 -04:00
rusefillc
6878445be4
generate java enum from C enum? generate both C and java from yaml? #2102
2021-10-24 12:49:51 -04:00
rusefillc
b125fa4a0e
placing all logs into same folder
2021-10-23 20:18:09 -04:00
rusefillc
41aacc5503
Trigger setup in TS is highly confusing #3401
...
rabbit hole: integrating enums with TS templating
2021-10-23 20:09:10 -04:00
rusefillc
99fe3335af
enum reader progress
2021-10-20 22:01:50 -04:00
rusefillc
3de3dee1fa
validate field name duplicates at least sometimes
2021-10-16 23:02:06 -04:00
rusefillc
86db25f94a
progress - live doc generator works again!
2021-10-16 21:08:50 -04:00
rusefillc
0dcb899348
Whatever we call it, no matter how we do it - we need live data / remote view into rusEFI actual state #3353
...
dead code
2021-10-14 14:11:52 -04:00
David Holdeman
127a638502
ConfigDefinition stuff ( #2940 )
...
* add check for empty string
* try catching duplicates, while allowing same id on a pin
* js brain
* fixes
* fixes
* comment out
* build
* bump submo
* comment
2021-07-09 22:07:07 -04:00
rusefi
3472002b30
extra state validation is needed
2021-07-09 01:11:20 -04:00
rusefillc
fcd1ede72f
MRE same pin or not? #2897
2021-07-02 18:22:13 -04:00
rusefillc
cc13245488
H64 uses GPIOD_12 twice why does it not fail? #2877
2021-07-02 13:15:48 -04:00
Matthew Kennedy
55d2231ccc
new parse: read rusefi.input, write almost-working output ini! ( #2851 )
...
* fix offsets inside struct arrays
* style
* fix index writing for arrays of structs
* write TS context comments
* cleanup
* ts writer copies all lines input -> output
* Add _hex and _char definitions
* definition tostring
* replace variables
* wire up firing order replacement
* jar
2021-06-24 16:36:30 -04:00
David Holdeman
34095492d1
Yaml parsing refactor ( #2842 )
...
* throw error on unknown class
* build
* refactor, first try
* fix some errors
* fix some errors
* fix some errors
* fix some errors
* fix some errors
* build
* start at one more
* checks, minor refactor
* try toString
* check for null, idk
* try throwing class not found error
* oh duh
* oh duh numba two
* oh duh numba three
* build
* switch to switch_inputs
* switch output to outputs
* try
* build
* break loop when found
* fix maybe
* add missing s
* fix a bug
* move nothingname check
* catch other class
* use PinType
2021-06-21 19:10:25 -04:00
Matthew Kennedy
f28c10e87f
parse enums ( #2832 )
...
* enums and definitions
* bad merge
* txt format
* endBit
* handle 1-size arrays
* strings
* fix auto enum
* hard code 0 and 1
* jar
* jar
2021-06-20 17:35:31 -04:00
Matthew Kennedy
b6195fcc55
config gen layout fixes ( #2829 )
...
* grammar and libs
* gitignore
* parsing
* allow empty line as root statement
* tolerate #if
* config def changes
* s
* ant build
* workaround
* compiled tool
* grammar for unions
* parse unions
* layout logic
* fix union alignment
* union in config
* enable definition resolve
* testing
* zero init behavior
* bit fields respect custom options
* ts prints arrays correctly
* ts prints structs correctly
* auto round numbers
* cleanup
* bad merge
* bad merge
* jar
* kick
2021-06-18 16:58:04 -04:00
Matthew Kennedy
14e1aeac53
cleanup for easier ini compare ( #2830 )
...
* remove dot zero
* don't parse as double
* minor formatting
* Revert "don't parse as double"
This reverts commit f2427927f7df0f5fa27ed66c888009e3a3da8412.
* expect integer "1"
* jar
2021-06-18 15:43:16 -04:00
Matthew Kennedy
d3d6c1694a
Antlr 2 ( #2823 )
...
* grammar and libs
* gitignore
* parsing
* allow empty line as root statement
* tolerate #if
* config def changes
* s
* ant build
* workaround
* compiled tool
* grammar for unions
* parse unions
* layout logic
* fix union alignment
* union in config
* jar
* comment
* jar
* jar
* no prefix on root struct
* stray space
* normalize some enums
2021-06-18 12:31:23 -04:00
Matthew Kennedy
5ae4af23fe
parse with antlr ( #2747 )
...
* grammar and libs
* gitignore
* parsing
* allow empty line as root statement
* tolerate #if
* config def changes
* s
* ant build
* workaround
* compiled tool
* console should not build config def tool
* ugh the dependency tree is insane
* this should fix hw ci
* console build
* console jenkins script
* test
* Revert "test"
This reverts commit 73f2da50f990bee9b51a1f919e8fcc6b06327d9a.
* throw on parse failure
* jar
* fix #2821
* comment
2021-06-16 17:07:05 -04:00
Matthew Kennedy
f6ddc2c17c
Config generator jar ( #2716 )
...
* fix test
* jar
* kick config
* guard stuff
* nmea
* nmea
* nmea
* c++ is type safe, which is good
* c++ is type safe
2021-05-17 12:32:59 +03:00
rusefillc
b9ebb6b9b9
gen_config.sh code duplication #2451
...
David saw dead code
2021-05-11 22:00:36 -04:00
David Holdeman
9eb4698184
Fix config CI ( #2638 )
...
* add yaml to inputFiles
* add jar
2021-05-06 23:12:05 -04:00
rusefillc
84441c1dcb
h64 more better error handling
2021-05-01 15:40:27 -04:00
rusefillc
c2721985b0
config definition better error handling
2021-05-01 15:12:39 -04:00
rusefillc
5b02073b20
field type into header comment
2021-04-26 17:51:29 -04:00
rusefillc
8ba2658406
is gen_config invoked too often now? #2387
2021-03-12 22:25:03 -05:00
rusefillc
dbe084bd22
is gen_config invoked too often now? #2387
...
unzip is complicated
2021-03-05 21:39:26 -05:00
rusefillc
6dd6f936b6
is gen_config invoked too often now? #2387
...
how about we do not trust anyone to properly handle EOL CRLF?
2021-03-05 20:35:53 -05:00
rusefillc
99503ccb5c
cAsE of rusEFI
2021-03-02 22:14:06 -05:00
rusefi
8ce70479f6
TS does not support zero length arrays? #2366
2021-02-16 17:25:52 -05:00
rusefillc
f7ad1ae8b7
code generator: better handing of array size 1
2021-02-08 23:47:48 -05:00
rusefillc
9e878b05d5
spaces into multiplication
2021-02-01 12:11:00 -05:00
Matthew Kennedy
f70750ca60
Remove whitespace ( #2246 )
...
* don't tab in fields
* jar
2021-01-27 15:44:52 -05:00
Matthew Kennedy
c309d1a555
normalize configuration grammar ( #2240 )
...
* modify grammar
* add missing typedefs
* these typedefs are easier to handle in the parser
* make the existing parser work with the changed format
* grumble grumble jar
* we can deal with this part later
* handle later
* deal with this later
2021-01-26 21:56:47 -05:00
David Holdeman
928b8ce70a
New board pin-mapping system ( #2231 )
...
* convert mre mapping
* convert mre mapping
* funny stuff for GPIOA_5
* move class next to id
* rough draft
* update scripts
* fix some errors
* fix some errors
* try
* check against null
* try amp
* try
* try
* fix some errors
* update scripts
* fix maybe
* fix maybe 2
* fix maybe
* fix maybe
* fix
* try
* fix
* use .equals
* use StringBuilder
* use instanceof
* use .max
* remove getMaxValue
* Suppress Warning
* major optimization
* fix maybe
* off-by-one error
* move yaml file loop
* add j2 connector
* add pads yaml
* check for null or empty
* add AV pins to pads
* forgot class
* move registerpins out of loop
* fix typo
* rebase
* check if string
* convert frankenso
* convert frankenso
* tyop
* missing class
* copy mre to skel
* remove prometheus yaml
* remove kinetis yaml
* build configDefinition
* replace var with string
* slight refactor
2021-01-22 12:03:14 -05:00
rusefillc
ebeec32676
Add #if/#else/#endif support to gen_config #1928
2020-11-05 08:04:04 -05:00
David Holdeman
02a12d76f3
fix type mismatch ( #1808 )
...
* fix type mismatch
* comment
* change field
* switch to efitimesec16_t
* add typedef
* add type to configdefinition
* build
2020-09-19 17:17:44 -04:00
rusefi
16f1d5a31b
Tokenisation of multipler expressions #1735
2020-08-30 15:31:22 -04:00
rusefi
586264e58b
https://github.com/rusefi/web_backend/issues/97
2020-08-30 14:58:05 -04:00
rusefi
92f0b76869
https://github.com/rusefi/web_backend/issues/73
...
toolset progress
2020-08-14 15:56:59 -04:00
rusefi
317738a335
Console commands are broken #1671
2020-08-05 19:51:43 -04:00
rusefi
0b57bd8390
progress
2020-08-04 23:18:35 -04:00