From 117e22cdd0d6b20968fc39e2c8e1a7e6c73e9e73 Mon Sep 17 00:00:00 2001 From: Michael Williamson Date: Sat, 4 Jun 2016 16:13:59 +0100 Subject: Use single instance of None --- Mammoth/Couscous/java/util/HashMap.cs | 2 +- Mammoth/Couscous/java/util/Optional.cs | 7 ++++++- 2 files changed, 7 insertions(+), 2 deletions(-) (limited to 'Mammoth/Couscous/java') diff --git a/Mammoth/Couscous/java/util/HashMap.cs b/Mammoth/Couscous/java/util/HashMap.cs index 38e516e..10070fc 100644 --- a/Mammoth/Couscous/java/util/HashMap.cs +++ b/Mammoth/Couscous/java/util/HashMap.cs @@ -30,7 +30,7 @@ namespace Mammoth.Couscous.java.util { if (_dictionary.ContainsKey(key)) { return new Some(_dictionary[key]); } else { - return new None(); + return None.Instance; } } diff --git a/Mammoth/Couscous/java/util/Optional.cs b/Mammoth/Couscous/java/util/Optional.cs index f295688..b5be056 100644 --- a/Mammoth/Couscous/java/util/Optional.cs +++ b/Mammoth/Couscous/java/util/Optional.cs @@ -16,6 +16,11 @@ namespace Mammoth.Couscous.java.util } internal class None : Optional { + internal static readonly None Instance = new None(); + + private None() { + } + public bool isPresent() { return false; } @@ -92,7 +97,7 @@ namespace Mammoth.Couscous.java.util { internal static Optional empty() { - return new None(); + return None.Instance; } internal static Optional of(T value) -- cgit v1.2.3