From 6a512190365002f54bd501b0863ded40123cb8e5 Mon Sep 17 00:00:00 2001 From: Joseph Humfrey Date: Fri, 24 Mar 2023 16:09:28 +0000 Subject: [PATCH] =?UTF-8?q?=F0=9F=A4=AA?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Documentation/ArchitectureAndDevOverview.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Documentation/ArchitectureAndDevOverview.md b/Documentation/ArchitectureAndDevOverview.md index 46cfe863..0001a07d 100644 --- a/Documentation/ArchitectureAndDevOverview.md +++ b/Documentation/ArchitectureAndDevOverview.md @@ -14,7 +14,7 @@ The following is a fairly brief tour of these 3 stages, hopefully enough to give The parser takes a root ink file (which may reference other ink files), and constructs a hierarchy of `Parsed.Object` objects that closely resemble the structure within the original ink files, as closely as possible to how it was written. -The parser is a hand-written recursive decent parser that inherits from `StringParser`, which allows a hierarchy of parse rules to be built using C# delegates. At the top level, `InkParser.cs` contains a method called `Parse()`, which returns a `Parsed.Story` object. +The parser is a hand-written recursive descent parser that inherits from `StringParser`, which allows a hierarchy of parse rules to be built using C# delegates. At the top level, `InkParser.cs` contains a method called `Parse()`, which returns a `Parsed.Story` object. Within `Parse()`, rules evaluated, each of which may contain more rules. Rules are simply methods that return the result of parsing or `null` if parsing failed (though there are exceptions to this).