diff --git a/ASN/asn2/AssemblyVersion.cs b/ASN/asn2/AssemblyVersion.cs
index 4ff8b73a1..7f91a82f8 100644
--- a/ASN/asn2/AssemblyVersion.cs
+++ b/ASN/asn2/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.512")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.512")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.514")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.514")]
diff --git a/ASN/asn2/version.version b/ASN/asn2/version.version
index 20366b296..7fd034ae1 100644
--- a/ASN/asn2/version.version
+++ b/ASN/asn2/version.version
@@ -1,2 +1,2 @@
-3.0.0.512
-3.0.0.512
+3.0.0.514
+3.0.0.514
diff --git a/Command/CommandEcho/AssemblyVersion.cs b/Command/CommandEcho/AssemblyVersion.cs
index 13703a8cf..9203d8adb 100644
--- a/Command/CommandEcho/AssemblyVersion.cs
+++ b/Command/CommandEcho/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.177")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.177")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.179")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.179")]
diff --git a/Command/CommandEcho/version.version b/Command/CommandEcho/version.version
index afd3b377a..767830aa9 100644
--- a/Command/CommandEcho/version.version
+++ b/Command/CommandEcho/version.version
@@ -1,2 +1,2 @@
-3.0.0.177
-3.0.0.177
+3.0.0.179
+3.0.0.179
diff --git a/Command/commandparse/AssemblyVersion.cs b/Command/commandparse/AssemblyVersion.cs
index ccb7d5ed0..54ed9af9d 100644
--- a/Command/commandparse/AssemblyVersion.cs
+++ b/Command/commandparse/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.526")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.526")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.528")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.528")]
diff --git a/Command/commandparse/version.version b/Command/commandparse/version.version
index 19bafccd0..e5465fec0 100644
--- a/Command/commandparse/version.version
+++ b/Command/commandparse/version.version
@@ -1,2 +1,2 @@
-3.0.0.526
-3.0.0.526
+3.0.0.528
+3.0.0.528
diff --git a/Constant/constant/AssemblyVersion.cs b/Constant/constant/AssemblyVersion.cs
index cf4cfc508..d57547328 100644
--- a/Constant/constant/AssemblyVersion.cs
+++ b/Constant/constant/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.600")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.600")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.602")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.602")]
diff --git a/Constant/constant/version.version b/Constant/constant/version.version
index 23339a4c2..9cde6742d 100644
--- a/Constant/constant/version.version
+++ b/Constant/constant/version.version
@@ -1,2 +1,2 @@
-3.0.0.600
-3.0.0.600
+3.0.0.602
+3.0.0.602
diff --git a/DNSConfig/srvconf/AssemblyVersion.cs b/DNSConfig/srvconf/AssemblyVersion.cs
index d6a20cb80..bd1b1bc66 100644
--- a/DNSConfig/srvconf/AssemblyVersion.cs
+++ b/DNSConfig/srvconf/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.215")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.215")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.217")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.217")]
diff --git a/DNSConfig/srvconf/version.version b/DNSConfig/srvconf/version.version
index d4d6c0d8f..754e126b8 100644
--- a/DNSConfig/srvconf/version.version
+++ b/DNSConfig/srvconf/version.version
@@ -1,2 +1,2 @@
-3.0.0.215
-3.0.0.215
+3.0.0.217
+3.0.0.217
diff --git a/DocTools/bootmaker/AssemblyVersion.cs b/DocTools/bootmaker/AssemblyVersion.cs
index 597b48f05..38875b522 100644
--- a/DocTools/bootmaker/AssemblyVersion.cs
+++ b/DocTools/bootmaker/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.540")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.540")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.542")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.542")]
diff --git a/DocTools/bootmaker/version.version b/DocTools/bootmaker/version.version
index 7ee9b0599..04b8a399c 100644
--- a/DocTools/bootmaker/version.version
+++ b/DocTools/bootmaker/version.version
@@ -1,2 +1,2 @@
-3.0.0.540
-3.0.0.540
+3.0.0.542
+3.0.0.542
diff --git a/DocTools/rfctool/AssemblyVersion.cs b/DocTools/rfctool/AssemblyVersion.cs
index 4231ae4f2..51e40bf08 100644
--- a/DocTools/rfctool/AssemblyVersion.cs
+++ b/DocTools/rfctool/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.707")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.707")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.709")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.709")]
diff --git a/DocTools/rfctool/version.version b/DocTools/rfctool/version.version
index 4a8bec62d..96bc68e99 100644
--- a/DocTools/rfctool/version.version
+++ b/DocTools/rfctool/version.version
@@ -1,2 +1,2 @@
-3.0.0.707
-3.0.0.707
+3.0.0.709
+3.0.0.709
diff --git a/Domainer/domainer/AssemblyVersion.cs b/Domainer/domainer/AssemblyVersion.cs
index 4ff8b73a1..7f91a82f8 100644
--- a/Domainer/domainer/AssemblyVersion.cs
+++ b/Domainer/domainer/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.512")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.512")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.514")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.514")]
diff --git a/Domainer/domainer/version.version b/Domainer/domainer/version.version
index 20366b296..7fd034ae1 100644
--- a/Domainer/domainer/version.version
+++ b/Domainer/domainer/version.version
@@ -1,2 +1,2 @@
-3.0.0.512
-3.0.0.512
+3.0.0.514
+3.0.0.514
diff --git a/Exceptional/Exceptional/AssemblyVersion.cs b/Exceptional/Exceptional/AssemblyVersion.cs
index e75180559..02fc16ae6 100644
--- a/Exceptional/Exceptional/AssemblyVersion.cs
+++ b/Exceptional/Exceptional/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.523")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.523")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.525")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.525")]
diff --git a/Exceptional/Exceptional/version.version b/Exceptional/Exceptional/version.version
index bae9ead17..5ad891871 100644
--- a/Exceptional/Exceptional/version.version
+++ b/Exceptional/Exceptional/version.version
@@ -1,2 +1,2 @@
-3.0.0.523
-3.0.0.523
+3.0.0.525
+3.0.0.525
diff --git a/FSRGen/fsrgen/AssemblyVersion.cs b/FSRGen/fsrgen/AssemblyVersion.cs
index 05a2d1691..24952c698 100644
--- a/FSRGen/fsrgen/AssemblyVersion.cs
+++ b/FSRGen/fsrgen/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.519")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.519")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.521")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.521")]
diff --git a/FSRGen/fsrgen/version.version b/FSRGen/fsrgen/version.version
index c1f185df8..eb0b4b9d0 100644
--- a/FSRGen/fsrgen/version.version
+++ b/FSRGen/fsrgen/version.version
@@ -1,2 +1,2 @@
-3.0.0.519
-3.0.0.519
+3.0.0.521
+3.0.0.521
diff --git a/GScript/gscript/AssemblyVersion.cs b/GScript/gscript/AssemblyVersion.cs
index 10b62554c..597b48f05 100644
--- a/GScript/gscript/AssemblyVersion.cs
+++ b/GScript/gscript/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.537")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.537")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.540")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.540")]
diff --git a/GScript/gscript/version.version b/GScript/gscript/version.version
index 6e1e50836..7ee9b0599 100644
--- a/GScript/gscript/version.version
+++ b/GScript/gscript/version.version
@@ -1,2 +1,2 @@
-3.0.0.537
-3.0.0.537
+3.0.0.540
+3.0.0.540
diff --git a/Goedel3/goedel3/AssemblyVersion.cs b/Goedel3/goedel3/AssemblyVersion.cs
index 391a885d8..24952c698 100644
--- a/Goedel3/goedel3/AssemblyVersion.cs
+++ b/Goedel3/goedel3/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.518")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.518")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.521")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.521")]
diff --git a/Goedel3/goedel3/version.version b/Goedel3/goedel3/version.version
index 694d4f177..eb0b4b9d0 100644
--- a/Goedel3/goedel3/version.version
+++ b/Goedel3/goedel3/version.version
@@ -1,2 +1,2 @@
-3.0.0.518
-3.0.0.518
+3.0.0.521
+3.0.0.521
diff --git a/MakeyMakey/makey/AssemblyVersion.cs b/MakeyMakey/makey/AssemblyVersion.cs
index 7f91a82f8..64cdb5302 100644
--- a/MakeyMakey/makey/AssemblyVersion.cs
+++ b/MakeyMakey/makey/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.514")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.514")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.516")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.516")]
diff --git a/MakeyMakey/makey/version.version b/MakeyMakey/makey/version.version
index 7fd034ae1..70c3fe731 100644
--- a/MakeyMakey/makey/version.version
+++ b/MakeyMakey/makey/version.version
@@ -1,2 +1,2 @@
-3.0.0.514
-3.0.0.514
+3.0.0.516
+3.0.0.516
diff --git a/Protogen/protogen/AssemblyVersion.cs b/Protogen/protogen/AssemblyVersion.cs
index 1f39787e9..05a2d1691 100644
--- a/Protogen/protogen/AssemblyVersion.cs
+++ b/Protogen/protogen/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.517")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.517")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.519")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.519")]
diff --git a/Protogen/protogen/version.version b/Protogen/protogen/version.version
index 130abcf33..c1f185df8 100644
--- a/Protogen/protogen/version.version
+++ b/Protogen/protogen/version.version
@@ -1,2 +1,2 @@
-3.0.0.517
-3.0.0.517
+3.0.0.519
+3.0.0.519
diff --git a/RegistryConfig/registryconfig/AssemblyVersion.cs b/RegistryConfig/registryconfig/AssemblyVersion.cs
index 4ff8b73a1..7f91a82f8 100644
--- a/RegistryConfig/registryconfig/AssemblyVersion.cs
+++ b/RegistryConfig/registryconfig/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.512")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.512")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.514")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.514")]
diff --git a/RegistryConfig/registryconfig/version.version b/RegistryConfig/registryconfig/version.version
index 20366b296..7fd034ae1 100644
--- a/RegistryConfig/registryconfig/version.version
+++ b/RegistryConfig/registryconfig/version.version
@@ -1,2 +1,2 @@
-3.0.0.512
-3.0.0.512
+3.0.0.514
+3.0.0.514
diff --git a/YASchema/Goedel.Tool.Yashima/Generate.Script b/YASchema/Goedel.Tool.Yashima/Generate.Script
index 21ed894c6..ce2c22a43 100644
--- a/YASchema/Goedel.Tool.Yashima/Generate.Script
+++ b/YASchema/Goedel.Tool.Yashima/Generate.Script
@@ -99,26 +99,35 @@ namespace #{Yaschema.NameSpaceName} {
#end method
#method GenersateSerializer Packet packet
-#% var plaintext = packet.Plaintext.SafeIndex();
-#% var mezzanine = packet.Mezzanine.SafeIndex();
+#% var plaintext = packet.Plaintext;
+#% var mezzanine = packet.Mezzanine;
// Serialize #{packet.PacketType} packet #{packet.Id}
///
/// Create a serialised packet of type #{packet.Id} packet.
///
/// The payload data.
- /// Extensions to be presented in the plaintext segment.
+ /// Additional extensions to be presented
+ /// in the plaintext segment.
+#if (packet.HasMezzanine)
+ /// Additional extensions to be presented
+ /// in the mezzanine segment.
+#end if
+#if (packet.HasEncrypted)
+ /// Additional extensions to be presented
+ /// in the encrypted segment.
+#end if
/// The serialized data.
public byte[] Serialize#{packet.ClassName} (
byte[] payload = null,
List plaintextExtensionsIn = null#!
#if (packet.HasMezzanine)
-
+,
List mezanineExtensionsIn = null#!
#end if
#if (packet.HasEncrypted)
-
- List encryptedExtensions = null#!
+,
+ List ciphertextExtensions = null#!
#end if
) {
diff --git a/YASchema/Goedel.Tool.Yashima/Generate.cs b/YASchema/Goedel.Tool.Yashima/Generate.cs
index b9371aab3..f284db598 100644
--- a/YASchema/Goedel.Tool.Yashima/Generate.cs
+++ b/YASchema/Goedel.Tool.Yashima/Generate.cs
@@ -138,26 +138,35 @@ public void GenerateCS (YaschemaStruct Yaschema) {
// GenersateSerializer
//
public void GenersateSerializer (Packet packet) {
- var plaintext = packet.Plaintext.SafeIndex();
- var mezzanine = packet.Mezzanine.SafeIndex();
+ var plaintext = packet.Plaintext;
+ var mezzanine = packet.Mezzanine;
_Output.Write (" // Serialize {1} packet {2}\n{0}", _Indent, packet.PacketType, packet.Id);
_Output.Write ("\n{0}", _Indent);
_Output.Write (" /// \n{0}", _Indent);
_Output.Write (" /// Create a serialised packet of type {1} packet.\n{0}", _Indent, packet.Id);
_Output.Write (" /// \n{0}", _Indent);
_Output.Write (" /// The payload data.\n{0}", _Indent);
- _Output.Write (" /// Extensions to be presented in the plaintext segment.\n{0}", _Indent);
+ _Output.Write (" /// Additional extensions to be presented \n{0}", _Indent);
+ _Output.Write (" /// in the plaintext segment.\n{0}", _Indent);
+ if ( (packet.HasMezzanine) ) {
+ _Output.Write (" /// Additional extensions to be presented\n{0}", _Indent);
+ _Output.Write (" /// in the mezzanine segment.\n{0}", _Indent);
+ }
+ if ( (packet.HasEncrypted) ) {
+ _Output.Write (" /// Additional extensions to be presented \n{0}", _Indent);
+ _Output.Write (" /// in the encrypted segment.\n{0}", _Indent);
+ }
_Output.Write (" /// The serialized data.\n{0}", _Indent);
_Output.Write (" public byte[] Serialize{1} (\n{0}", _Indent, packet.ClassName);
_Output.Write (" byte[] payload = null,\n{0}", _Indent);
_Output.Write (" List plaintextExtensionsIn = null", _Indent);
if ( (packet.HasMezzanine) ) {
- _Output.Write ("\n{0}", _Indent);
+ _Output.Write (",\n{0}", _Indent);
_Output.Write (" List mezanineExtensionsIn = null", _Indent);
}
if ( (packet.HasEncrypted) ) {
- _Output.Write ("\n{0}", _Indent);
- _Output.Write (" List encryptedExtensions = null", _Indent);
+ _Output.Write (",\n{0}", _Indent);
+ _Output.Write (" List ciphertextExtensions = null", _Indent);
}
_Output.Write ("\n{0}", _Indent);
_Output.Write (" ) {{\n{0}", _Indent);
diff --git a/YASchema/Goedel.Tool.Yashima/YaschemaPlus.cs b/YASchema/Goedel.Tool.Yashima/YaschemaPlus.cs
index cf8ee339a..eb348221e 100644
--- a/YASchema/Goedel.Tool.Yashima/YaschemaPlus.cs
+++ b/YASchema/Goedel.Tool.Yashima/YaschemaPlus.cs
@@ -29,16 +29,16 @@ public override void Init() {
_InitChildren();
- foreach (var entry in Top) {
- switch (entry) {
- case Namespace nameSpace: {
- Namespace = nameSpace;
- break;
- }
+ //foreach (var entry in Top) {
+ // switch (entry) {
+ // case Namespace nameSpace: {
+ // Namespace = nameSpace;
+ // break;
+ // }
- }
- //entry.Init(null);
- }
+ // }
+ // //entry.Init(null);
+ // }
}
@@ -47,18 +47,25 @@ public partial class Packet {
public string ClassName => YaschemaStruct.PacketPrefix + Id.Label;
- public bool IsInitial => Initial.Count > 0;
- public bool IsInitialHostCredential => IsInitial && (Initial[0].HostCredential.Count > 0);
+ public bool IsInitial => Initial != null;
+ public bool IsInitialHostCredential => IsInitial && (Initial.HostCredential.Count > 0);
+
+
- public List[> Responds => Respond[0].To;
+ public bool HasPlaintext => Plaintext != null;
+ public bool HasMezzanine => Mezzanine != null;
+ public bool HasEncrypted => Encrypted != null;
- public bool HasPlaintext => Plaintext?.Count > 0;
- public bool HasMezzanine => Mezzanine?.Count > 0;
- public bool HasEncrypted => Encrypted?.Count > 0;
- public List<_Choice> PlaintextItems => HasPlaintext ? Plaintext[0].Entries : null;
- public List<_Choice> MezzanineItems => HasMezzanine ? Mezzanine[0].Entries : null;
- public List<_Choice> EncryptedItems => HasEncrypted ? Encrypted[0].Entries : null;
+
+
+
+
+ public Initial Initial;
+ public Respond Respond;
+ public Plaintext Plaintext;
+ public Mezzanine Mezzanine;
+ public Encrypted Encrypted;
public bool IsClient;
@@ -106,10 +113,56 @@ public partial class Host {
}
public partial class Namespace {
+ public override void Init(_Choice Parent) {
+ base.Init(Parent);
+ _Base.Namespace = this;
+ }
}
+ public partial class Initial {
+ public override void Init(_Choice Parent) {
+ base.Init(Parent);
+ if (Parent is Packet packet) {
+ packet.Initial = this;
+ }
+ }
+ }
+ public partial class Respond {
+ public override void Init(_Choice Parent) {
+ base.Init(Parent);
+ if (Parent is Packet packet) {
+ packet.Respond = this;
+ }
+ }
+ }
+ public partial class Plaintext {
+ public override void Init(_Choice Parent) {
+ base.Init(Parent);
+ if (Parent is Packet packet) {
+ packet.Plaintext = this;
+ }
+ }
+ }
+ public partial class Mezzanine {
+ public override void Init(_Choice Parent) {
+ base.Init(Parent);
+ if (Parent is Packet packet) {
+ packet.Mezzanine = this;
+ }
+ }
+ }
+ public partial class Encrypted {
+ public override void Init(_Choice Parent) {
+ base.Init(Parent);
+ if (Parent is Packet packet) {
+ packet.Encrypted = this;
+ }
+ }
+ }
+
+
public partial class ClientCredential {
public override void Init(_Choice Parent) {
base.Init(Parent);
diff --git a/YASchema/Goedel.Tool.Yashima/YaschemaSchema.cs b/YASchema/Goedel.Tool.Yashima/YaschemaSchema.cs
index 59ee8050f..553f5a315 100644
--- a/YASchema/Goedel.Tool.Yashima/YaschemaSchema.cs
+++ b/YASchema/Goedel.Tool.Yashima/YaschemaSchema.cs
@@ -49,6 +49,11 @@
// Host
// TypeType
// Packet
+// Initial
+// Respond
+// Plaintext
+// Mezzanine
+// Encrypted
// ClientEphemerals
// ClientEphemeral
// HostKeyID
@@ -71,11 +76,6 @@
// Text
// Entries
// Options
-// Initial
-// Respond
-// Plaintext
-// Mezzanine
-// Encrypted
// HostCredential
// To
// TokenType
@@ -99,11 +99,11 @@ public enum YaschemaStructType {
Mezzanine,
Encrypted,
Payload,
- HostCredential,
ClientCredential,
+ HostCredential,
ClientEphemerals,
- ClientEphemeral,
HostEphemerals,
+ ClientEphemeral,
HostEphemeral,
Challenge,
Response,
@@ -125,10 +125,7 @@ public abstract partial class _Choice {
public virtual void Init (_Choice parent) {
_Parent = parent;
-
- _Base ??= parent?._Base;
-
- }
+ }
@@ -236,17 +233,16 @@ public override void Serialize (StructureWriter Output, bool tag) {
public partial class Packet : _Choice {
public ID<_Choice> Id;
- public List Initial = new List ();
- public List Respond = new List ();
- public List Plaintext = new List ();
- public List Mezzanine = new List ();
- public List Encrypted = new List ();
+ public List <_Choice> Entries = new List<_Choice> ();
public override YaschemaStructType _Tag () =>YaschemaStructType.Packet;
public override void _InitChildren (_Choice Parent) {
Init (Parent);
+ foreach (var Sub in Entries) {
+ Sub._InitChildren (this);
+ }
}
public override void Serialize (StructureWriter Output, bool tag) {
@@ -257,19 +253,7 @@ public override void Serialize (StructureWriter Output, bool tag) {
Output.WriteId ("Id", Id.ToString());
Output.StartList ("");
- foreach (Initial _e in Initial) {
- _e.Serialize (Output, true);
- }
- foreach (Respond _e in Respond) {
- _e.Serialize (Output, true);
- }
- foreach (Plaintext _e in Plaintext) {
- _e.Serialize (Output, true);
- }
- foreach (Mezzanine _e in Mezzanine) {
- _e.Serialize (Output, true);
- }
- foreach (Encrypted _e in Encrypted) {
+ foreach (_Choice _e in Entries) {
_e.Serialize (Output, true);
}
Output.EndList ("");
@@ -444,9 +428,9 @@ public override void Serialize (StructureWriter Output, bool tag) {
}
}
- public partial class HostCredential : _Choice {
+ public partial class ClientCredential : _Choice {
- public override YaschemaStructType _Tag () =>YaschemaStructType.HostCredential;
+ public override YaschemaStructType _Tag () =>YaschemaStructType.ClientCredential;
public override void _InitChildren (_Choice Parent) {
@@ -456,18 +440,18 @@ public override void _InitChildren (_Choice Parent) {
public override void Serialize (StructureWriter Output, bool tag) {
if (tag) {
- Output.StartElement ("HostCredential");
+ Output.StartElement ("ClientCredential");
}
if (tag) {
- Output.EndElement ("HostCredential");
+ Output.EndElement ("ClientCredential");
}
}
}
- public partial class ClientCredential : _Choice {
+ public partial class HostCredential : _Choice {
- public override YaschemaStructType _Tag () =>YaschemaStructType.ClientCredential;
+ public override YaschemaStructType _Tag () =>YaschemaStructType.HostCredential;
public override void _InitChildren (_Choice Parent) {
@@ -477,11 +461,11 @@ public override void _InitChildren (_Choice Parent) {
public override void Serialize (StructureWriter Output, bool tag) {
if (tag) {
- Output.StartElement ("ClientCredential");
+ Output.StartElement ("HostCredential");
}
if (tag) {
- Output.EndElement ("ClientCredential");
+ Output.EndElement ("HostCredential");
}
}
}
@@ -507,9 +491,9 @@ public override void Serialize (StructureWriter Output, bool tag) {
}
}
- public partial class ClientEphemeral : _Choice {
+ public partial class HostEphemerals : _Choice {
- public override YaschemaStructType _Tag () =>YaschemaStructType.ClientEphemeral;
+ public override YaschemaStructType _Tag () =>YaschemaStructType.HostEphemerals;
public override void _InitChildren (_Choice Parent) {
@@ -519,18 +503,18 @@ public override void _InitChildren (_Choice Parent) {
public override void Serialize (StructureWriter Output, bool tag) {
if (tag) {
- Output.StartElement ("ClientEphemeral");
+ Output.StartElement ("HostEphemerals");
}
if (tag) {
- Output.EndElement ("ClientEphemeral");
+ Output.EndElement ("HostEphemerals");
}
}
}
- public partial class HostEphemerals : _Choice {
+ public partial class ClientEphemeral : _Choice {
- public override YaschemaStructType _Tag () =>YaschemaStructType.HostEphemerals;
+ public override YaschemaStructType _Tag () =>YaschemaStructType.ClientEphemeral;
public override void _InitChildren (_Choice Parent) {
@@ -540,11 +524,11 @@ public override void _InitChildren (_Choice Parent) {
public override void Serialize (StructureWriter Output, bool tag) {
if (tag) {
- Output.StartElement ("HostEphemerals");
+ Output.StartElement ("ClientEphemeral");
}
if (tag) {
- Output.EndElement ("HostEphemerals");
+ Output.EndElement ("ClientEphemeral");
}
}
}
@@ -682,7 +666,7 @@ public enum StateCode {
Host__Entries,
Packet_Start,
Packet__Id,
- Packet__Options,
+ Packet__Entries,
Initial_Start,
Initial__Options,
Respond_Start,
@@ -694,11 +678,11 @@ public enum StateCode {
Encrypted_Start,
Encrypted__Entries,
Payload_Start,
- HostCredential_Start,
ClientCredential_Start,
+ HostCredential_Start,
ClientEphemerals_Start,
- ClientEphemeral_Start,
HostEphemerals_Start,
+ ClientEphemeral_Start,
HostEphemeral_Start,
Challenge_Start,
Response_Start,
@@ -785,11 +769,11 @@ private Goedel.Tool.Yaschema._Choice New_Choice(string Label) {
case "Mezzanine": return NewMezzanine();
case "Encrypted": return NewEncrypted();
case "Payload": return NewPayload();
- case "HostCredential": return NewHostCredential();
case "ClientCredential": return NewClientCredential();
+ case "HostCredential": return NewHostCredential();
case "ClientEphemerals": return NewClientEphemerals();
- case "ClientEphemeral": return NewClientEphemeral();
case "HostEphemerals": return NewHostEphemerals();
+ case "ClientEphemeral": return NewClientEphemeral();
case "HostEphemeral": return NewHostEphemeral();
case "Challenge": return NewChallenge();
case "Response": return NewResponse();
@@ -883,18 +867,18 @@ private Goedel.Tool.Yaschema.Payload NewPayload() {
}
- private Goedel.Tool.Yaschema.HostCredential NewHostCredential() {
- Goedel.Tool.Yaschema.HostCredential result = new Goedel.Tool.Yaschema.HostCredential();
+ private Goedel.Tool.Yaschema.ClientCredential NewClientCredential() {
+ Goedel.Tool.Yaschema.ClientCredential result = new Goedel.Tool.Yaschema.ClientCredential();
Push (result);
- State = StateCode.HostCredential_Start;
+ State = StateCode.ClientCredential_Start;
return result;
}
- private Goedel.Tool.Yaschema.ClientCredential NewClientCredential() {
- Goedel.Tool.Yaschema.ClientCredential result = new Goedel.Tool.Yaschema.ClientCredential();
+ private Goedel.Tool.Yaschema.HostCredential NewHostCredential() {
+ Goedel.Tool.Yaschema.HostCredential result = new Goedel.Tool.Yaschema.HostCredential();
Push (result);
- State = StateCode.ClientCredential_Start;
+ State = StateCode.HostCredential_Start;
return result;
}
@@ -907,18 +891,18 @@ private Goedel.Tool.Yaschema.ClientEphemerals NewClientEphemerals() {
}
- private Goedel.Tool.Yaschema.ClientEphemeral NewClientEphemeral() {
- Goedel.Tool.Yaschema.ClientEphemeral result = new Goedel.Tool.Yaschema.ClientEphemeral();
+ private Goedel.Tool.Yaschema.HostEphemerals NewHostEphemerals() {
+ Goedel.Tool.Yaschema.HostEphemerals result = new Goedel.Tool.Yaschema.HostEphemerals();
Push (result);
- State = StateCode.ClientEphemeral_Start;
+ State = StateCode.HostEphemerals_Start;
return result;
}
- private Goedel.Tool.Yaschema.HostEphemerals NewHostEphemerals() {
- Goedel.Tool.Yaschema.HostEphemerals result = new Goedel.Tool.Yaschema.HostEphemerals();
+ private Goedel.Tool.Yaschema.ClientEphemeral NewClientEphemeral() {
+ Goedel.Tool.Yaschema.ClientEphemeral result = new Goedel.Tool.Yaschema.ClientEphemeral();
Push (result);
- State = StateCode.HostEphemerals_Start;
+ State = StateCode.ClientEphemeral_Start;
return result;
}
@@ -976,11 +960,11 @@ static Goedel.Tool.Yaschema.YaschemaStructType _Reserved(string Label) {
case "Mezzanine": return Goedel.Tool.Yaschema.YaschemaStructType.Mezzanine;
case "Encrypted": return Goedel.Tool.Yaschema.YaschemaStructType.Encrypted;
case "Payload": return Goedel.Tool.Yaschema.YaschemaStructType.Payload;
- case "HostCredential": return Goedel.Tool.Yaschema.YaschemaStructType.HostCredential;
case "ClientCredential": return Goedel.Tool.Yaschema.YaschemaStructType.ClientCredential;
+ case "HostCredential": return Goedel.Tool.Yaschema.YaschemaStructType.HostCredential;
case "ClientEphemerals": return Goedel.Tool.Yaschema.YaschemaStructType.ClientEphemerals;
- case "ClientEphemeral": return Goedel.Tool.Yaschema.YaschemaStructType.ClientEphemeral;
case "HostEphemerals": return Goedel.Tool.Yaschema.YaschemaStructType.HostEphemerals;
+ case "ClientEphemeral": return Goedel.Tool.Yaschema.YaschemaStructType.ClientEphemeral;
case "HostEphemeral": return Goedel.Tool.Yaschema.YaschemaStructType.HostEphemeral;
case "Challenge": return Goedel.Tool.Yaschema.YaschemaStructType.Challenge;
case "Response": return Goedel.Tool.Yaschema.YaschemaStructType.Response;
@@ -1193,62 +1177,41 @@ public override void Process(TokenType Token, Position Position, string Text) {
throw new Expected("Expected LABEL or LITERAL");
case StateCode.Packet__Id:
+
if (Token == TokenType.BEGIN) {
- State = StateCode.Packet__Options;
+ State = StateCode.Packet__Entries;
}
else {
Pop ();
Represent = true;
}
break;
- case StateCode.Packet__Options:
+ case StateCode.Packet__Entries:
if (Token == TokenType.END) {
Pop();
break;
}
- // Parser transition for OPTIONS $$$$$
+ // Parser transition for LIST $$$$$
+
else if (Token == TokenType.LABEL) {
Goedel.Tool.Yaschema.Packet Current_Cast = (Goedel.Tool.Yaschema.Packet)Current;
Goedel.Tool.Yaschema.YaschemaStructType LabelType = _Reserved (Text);
- switch (LabelType) {
- case Goedel.Tool.Yaschema.YaschemaStructType.Initial : {
-
- // Initial Initial
- Current_Cast.Initial.Add (NewInitial ());
- break;
- }
- case Goedel.Tool.Yaschema.YaschemaStructType.Respond : {
-
- // Respond Respond
- Current_Cast.Respond.Add (NewRespond ());
- break;
- }
- case Goedel.Tool.Yaschema.YaschemaStructType.Plaintext : {
-
- // Plaintext Plaintext
- Current_Cast.Plaintext.Add (NewPlaintext ());
- break;
- }
- case Goedel.Tool.Yaschema.YaschemaStructType.Mezzanine : {
-
- // Mezzanine Mezzanine
- Current_Cast.Mezzanine.Add (NewMezzanine ());
- break;
- }
- case Goedel.Tool.Yaschema.YaschemaStructType.Encrypted : {
-
- // Encrypted Encrypted
- Current_Cast.Encrypted.Add (NewEncrypted ());
- break;
- }
- default : {
- throw new Expected("Parser Error Expected [Initial Respond Plaintext Mezzanine Encrypted ]");
- }
+ if ( false |
+ (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.Initial) |
+ (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.Respond) |
+ (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.Plaintext) |
+ (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.Mezzanine) |
+ (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.Encrypted) ) {
+ Current_Cast.Entries.Add (New_Choice(Text));
+ }
+ else {
+ throw new Expected ("Parser Error Expected [Initial Respond Plaintext Mezzanine Encrypted ]");
}
}
break;
+
case StateCode.Initial_Start:
if (Token == TokenType.BEGIN) {
State = StateCode.Initial__Options;
@@ -1372,13 +1335,13 @@ public override void Process(TokenType Token, Position Position, string Text) {
if ( false |
(LabelType == Goedel.Tool.Yaschema.YaschemaStructType.ClientCredential) |
(LabelType == Goedel.Tool.Yaschema.YaschemaStructType.ClientKeyID) |
- (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.Payload) |
(LabelType == Goedel.Tool.Yaschema.YaschemaStructType.HostEphemeral) |
- (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.HostEphemerals) ) {
+ (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.HostEphemerals) |
+ (LabelType == Goedel.Tool.Yaschema.YaschemaStructType.Payload) ) {
Current_Cast.Entries.Add (New_Choice(Text));
}
else {
- throw new Expected ("Parser Error Expected [ClientCredential ClientKeyID Payload HostEphemeral HostEphemerals ]");
+ throw new Expected ("Parser Error Expected [ClientCredential ClientKeyID HostEphemeral HostEphemerals Payload ]");
}
}
break;
@@ -1420,11 +1383,11 @@ public override void Process(TokenType Token, Position Position, string Text) {
Pop ();
Represent = true;
break;
- case StateCode.HostCredential_Start:
+ case StateCode.ClientCredential_Start:
Pop ();
Represent = true;
break;
- case StateCode.ClientCredential_Start:
+ case StateCode.HostCredential_Start:
Pop ();
Represent = true;
break;
@@ -1432,11 +1395,11 @@ public override void Process(TokenType Token, Position Position, string Text) {
Pop ();
Represent = true;
break;
- case StateCode.ClientEphemeral_Start:
+ case StateCode.HostEphemerals_Start:
Pop ();
Represent = true;
break;
- case StateCode.HostEphemerals_Start:
+ case StateCode.ClientEphemeral_Start:
Pop ();
Represent = true;
break;
diff --git a/YASchema/Goedel.Tool.Yashima/YaschemaSchema.gdl b/YASchema/Goedel.Tool.Yashima/YaschemaSchema.gdl
index 7a58370c7..d8fed44ec 100644
--- a/YASchema/Goedel.Tool.Yashima/YaschemaSchema.gdl
+++ b/YASchema/Goedel.Tool.Yashima/YaschemaSchema.gdl
@@ -15,12 +15,12 @@ Class Goedel.Tool.Yaschema YaschemaStruct
Type Packet
Id ID PacketType
- Options Options
- Initial Initial Multiple
- Respond Respond Multiple
- Plaintext Plaintext Multiple
- Mezzanine Mezzanine Multiple
- Encrypted Encrypted Multiple
+ Entries List Choice
+ Initial
+ Respond
+ Plaintext
+ Mezzanine
+ Encrypted
Type Initial
Options Options
diff --git a/YASchema/yaschema/AssemblyVersion.cs b/YASchema/yaschema/AssemblyVersion.cs
index ee6119802..154e9112b 100644
--- a/YASchema/yaschema/AssemblyVersion.cs
+++ b/YASchema/yaschema/AssemblyVersion.cs
@@ -1,6 +1,6 @@
using System;
using System.Reflection;
-[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.597")]
-[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.597")]
+[assembly: System.Reflection.AssemblyVersionAttribute("3.0.0.599")]
+[assembly: System.Reflection.AssemblyFileVersionAttribute("3.0.0.599")]
diff --git a/YASchema/yaschema/version.version b/YASchema/yaschema/version.version
index 7142b6e3e..d8fd3c7c9 100644
--- a/YASchema/yaschema/version.version
+++ b/YASchema/yaschema/version.version
@@ -1,2 +1,2 @@
-3.0.0.597
-3.0.0.597
+3.0.0.599
+3.0.0.599
]