From 51d80504d6395167b7eaabd20fcb5a7f16720891 Mon Sep 17 00:00:00 2001 From: Jonathan Bernard Date: Tue, 28 Mar 2023 15:31:42 +0100 Subject: [PATCH] Simplified mermaid diagram of the VCard3 parsing logic. --- doc/vcard3.mmd | 23 +++++++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 doc/vcard3.mmd diff --git a/doc/vcard3.mmd b/doc/vcard3.mmd new file mode 100644 index 0000000..506293f --- /dev/null +++ b/doc/vcard3.mmd @@ -0,0 +1,23 @@ +stateDiagram-v2 + [*] --> StartVCard + StartVCard --> ContentLine: "BEGIN VCARD" CRLF + ContentLine --> EndVCard: "END VCARD" CRLF + ContentLine --> Name + Name --> Name: 0-9/a-z/-/. + Name --> Param: SEMICOLON + Name --> Value: COLON + Param --> Value: COLON + Value --> ContentLine: CRLF + + state Param { + [*] --> ParamName + ParamName --> ParamName: 0-9/a-z/-/. + ParamName --> ParamValue: "=" + ParamValue --> ParamValue: "," + ParamValue --> PText + ParamValue --> Quoted + PText --> PText: SAFE-CHAR + PText --> [*] + Quoted --> Quoted: QSAFE-CHAR + Quoted --> [*] + }