From 0f9ef005f063198ea2e16ca36beaead4bd5e3824 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Thu, 14 Apr 2016 21:12:07 +0100 Subject: Add .NET output --- dotnet/Mammoth/Couscous/HorribleHacks.cs | 21 +++++++++++++++++++++ 1 file changed, 21 insertions(+) create mode 100644 dotnet/Mammoth/Couscous/HorribleHacks.cs (limited to 'dotnet/Mammoth/Couscous/HorribleHacks.cs') diff --git a/dotnet/Mammoth/Couscous/HorribleHacks.cs b/dotnet/Mammoth/Couscous/HorribleHacks.cs new file mode 100644 index 0000000..88c746b --- /dev/null +++ b/dotnet/Mammoth/Couscous/HorribleHacks.cs @@ -0,0 +1,21 @@ +using Mammoth.Couscous.java.util; +using Mammoth.Couscous.org.zwobble.mammoth.@internal.documents; +using System.Linq; + +namespace Mammoth.Couscous { + internal static class HorribleHacks { + internal static bool equals(this Optional first, Optional second) { + return (!first.isPresent() && !second.isPresent()) || (first.isPresent() && second.isPresent() && first.get() == second.get()); + } + + internal static bool equals(this Map firstMap, Map secondMap) { + var first = FromJava.MapToDictionary(firstMap); + var second = FromJava.MapToDictionary(secondMap); + return first.Count == second.Count && first.All(item => second.ContainsKey(item.Key) && second[item.Key] == item.Value); + } + + internal static bool equals(this NoteType first, NoteType second) { + return first == second; + } + } +} -- cgit v1.2.3