From 2517f34e24cad39a12f1498e5c0c37ca39c7daef Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Kn=C3=BCttel?= Date: Wed, 3 Oct 2018 22:43:39 +0200 Subject: [PATCH] added some designs for the compiler --- doc/arithmetic_expression.dia | Bin 0 -> 2343 bytes doc/arithmetic_expression.png | Bin 0 -> 14083 bytes doc/assignment_statement.dia | Bin 0 -> 2323 bytes doc/assignment_statement.png | Bin 0 -> 12524 bytes doc/parsing_01.dia | Bin 0 -> 1488 bytes doc/parsing_01.png | Bin 0 -> 7737 bytes 6 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 doc/arithmetic_expression.dia create mode 100644 doc/arithmetic_expression.png create mode 100644 doc/assignment_statement.dia create mode 100644 doc/assignment_statement.png create mode 100644 doc/parsing_01.dia create mode 100644 doc/parsing_01.png diff --git a/doc/arithmetic_expression.dia b/doc/arithmetic_expression.dia new file mode 100644 index 0000000000000000000000000000000000000000..df355a880bf2a5f7804c77bbb13cbe5823ac3269 GIT binary patch literal 2343 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 b*C-$7`in7|&rIM`VkjjA)$>{BuHXJYw5+n@ literal 0 HcmV?d00001 diff --git a/doc/assignment_statement.dia b/doc/assignment_statement.dia new file mode 100644 index 0000000000000000000000000000000000000000..de88404d528eee28f67f62ede1cb532e51aca89c GIT binary patch literal 2323 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 literal 0 HcmV?d00001 diff --git a/doc/parsing_01.dia b/doc/parsing_01.dia new file mode 100644 index 0000000000000000000000000000000000000000..0009107f2147d6bc839303c5746a4c1e75ecd45a GIT binary patch literal 1488 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 literal 0 HcmV?d00001