aboutsummaryrefslogtreecommitdiff
path: root/src/parser/parser.l
AgeCommit message (Collapse)Author
2023-12-07Add power meter element to measure DC optical powerClément Zrounba
This device replaces photodetector in cases where the DC power should be measured efficiently, without considering realistic effects (bandwidth, noise, responsivity...). * Syntax in netlist: `PWRnnnn <optical net>` * Parameters: none
2023-12-06Allowed modification of photodetector noise in the netlist as NOISE_BYPASS ↵cardosorapha
and FREQUENCY, fixed comments in parser
2023-11-23Temporarily fix small issue in parserClément Zrounba
Change the way unary signs are handled (e.g., "+1e9", "-15"): - instead of lexer, it is not the job of the parser - due to how positional arguments chain together, expressions now need to be grouped using curly brackets in positional arguments list in order to avoid ambiguous netlists (e.g., `wg1 in out 100e-9 +2`) - `-` appearing in net names could also pose issue but I think it's ok now ? Now: - `wg1 in out {2 - 1}` → one positional arg (= 2-1 = 1) - `wg1 in out 2 - 1` → two positional args (2 and -1) - `wg1 in out-abc + 1` → one positional args (1) (output net name: `out-abc`) - `wg1 in out - abc + 1` → one positional args (1) (output net name: `out-abc`) Ultimately this should be revamped in a better way, but the way the parser works, it was the best minimal change fix. It should hold for now.
2023-11-14Improve parsingClément Zrounba
- Make multi-file more robust - Error reporting is more accurate (shows file:line and prints offending string) - Allow `.include` directives in subcircuits
2023-11-03improve handling of multiple filesClément Zrounba
2023-11-03Add initial support for several netlists filesClément Zrounba
Netlists are read in the order they are specified on the command line. They can be specified using several `-f <name>` arguments.
2023-09-30Initial releaseClément Zrounba