Lucene.Net.Search.FieldCacheImpl: Removed field value types and declared Get methods inline using delegate methods
diff --git a/src/Lucene.Net/Search/FieldCacheImpl.cs b/src/Lucene.Net/Search/FieldCacheImpl.cs
index f5bb0dd..08d933a 100644
--- a/src/Lucene.Net/Search/FieldCacheImpl.cs
+++ b/src/Lucene.Net/Search/FieldCacheImpl.cs
@@ -589,7 +589,7 @@
             {
                 // Not cached here by FieldCacheImpl (cached instead
                 // per-thread by SegmentReader):
-                return new FieldCache_BytesAnonymousInnerClassHelper(this, valuesIn);
+                return new FieldCache.Bytes(get: (docID) => (byte)valuesIn.Get(docID));
             }
             else
             {
@@ -613,24 +613,6 @@
             }
         }
 
-        private class FieldCache_BytesAnonymousInnerClassHelper : FieldCache.Bytes
-        {
-            private readonly FieldCacheImpl outerInstance;
-
-            private NumericDocValues valuesIn;
-
-            public FieldCache_BytesAnonymousInnerClassHelper(FieldCacheImpl outerInstance, NumericDocValues valuesIn)
-            {
-                this.outerInstance = outerInstance;
-                this.valuesIn = valuesIn;
-            }
-
-            public override byte Get(int docID)
-            {
-                return (byte)valuesIn.Get(docID);
-            }
-        }
-
         internal class BytesFromArray : FieldCache.Bytes
         {
             private readonly sbyte[] values;
@@ -765,7 +747,7 @@
             {
                 // Not cached here by FieldCacheImpl (cached instead
                 // per-thread by SegmentReader):
-                return new FieldCache_Int16sAnonymousInnerClassHelper(this, valuesIn);
+                return new FieldCache.Int16s(get: (docID) => (short)valuesIn.Get(docID));
             }
             else
             {
@@ -787,24 +769,6 @@
             }
         }
 
-        private class FieldCache_Int16sAnonymousInnerClassHelper : FieldCache.Int16s
-        {
-            private readonly FieldCacheImpl outerInstance;
-
-            private NumericDocValues valuesIn;
-
-            public FieldCache_Int16sAnonymousInnerClassHelper(FieldCacheImpl outerInstance, NumericDocValues valuesIn)
-            {
-                this.outerInstance = outerInstance;
-                this.valuesIn = valuesIn;
-            }
-
-            public override short Get(int docID)
-            {
-                return (short)valuesIn.Get(docID);
-            }
-        }
-
         /// <summary>
         /// NOTE: This was ShortsFromArray in Lucene
         /// </summary>
@@ -943,7 +907,7 @@
             {
                 // Not cached here by FieldCacheImpl (cached instead
                 // per-thread by SegmentReader):
-                return new FieldCache_Int32sAnonymousInnerClassHelper(this, valuesIn);
+                return new FieldCache.Int32s(get: (docID) => (int)valuesIn.Get(docID));
             }
             else
             {
@@ -965,24 +929,6 @@
             }
         }
 
-        private class FieldCache_Int32sAnonymousInnerClassHelper : FieldCache.Int32s
-        {
-            private readonly FieldCacheImpl outerInstance;
-
-            private NumericDocValues valuesIn;
-
-            public FieldCache_Int32sAnonymousInnerClassHelper(FieldCacheImpl outerInstance, NumericDocValues valuesIn)
-            {
-                this.outerInstance = outerInstance;
-                this.valuesIn = valuesIn;
-            }
-
-            public override int Get(int docID)
-            {
-                return (int)valuesIn.Get(docID);
-            }
-        }
-
         /// <summary>
         /// NOTE: This was IntsFromArray in Lucene
         /// </summary>
@@ -1244,7 +1190,7 @@
             {
                 // Not cached here by FieldCacheImpl (cached instead
                 // per-thread by SegmentReader):
-                return new FieldCache_SinglesAnonymousInnerClassHelper(this, valuesIn);
+                return new FieldCache.Singles(get: (docID) => J2N.BitConversion.Int32BitsToSingle((int)valuesIn.Get(docID)));
             }
             else
             {
@@ -1266,24 +1212,6 @@
             }
         }
 
-        private class FieldCache_SinglesAnonymousInnerClassHelper : FieldCache.Singles
-        {
-            private readonly FieldCacheImpl outerInstance;
-
-            private NumericDocValues valuesIn;
-
-            public FieldCache_SinglesAnonymousInnerClassHelper(FieldCacheImpl outerInstance, NumericDocValues valuesIn)
-            {
-                this.outerInstance = outerInstance;
-                this.valuesIn = valuesIn;
-            }
-
-            public override float Get(int docID)
-            {
-                return J2N.BitConversion.Int32BitsToSingle((int)valuesIn.Get(docID));
-            }
-        }
-
         /// <summary>
         /// NOTE: This was FloatsFromArray in Lucene
         /// </summary>
@@ -1416,7 +1344,7 @@
             {
                 // Not cached here by FieldCacheImpl (cached instead
                 // per-thread by SegmentReader):
-                return new FieldCache_Int64sAnonymousInnerClassHelper(this, valuesIn);
+                return new FieldCache.Int64s(get: (docID) => valuesIn.Get(docID));
             }
             else
             {
@@ -1438,24 +1366,6 @@
             }
         }
 
-        private class FieldCache_Int64sAnonymousInnerClassHelper : FieldCache.Int64s
-        {
-            private readonly FieldCacheImpl outerInstance;
-
-            private NumericDocValues valuesIn;
-
-            public FieldCache_Int64sAnonymousInnerClassHelper(FieldCacheImpl outerInstance, NumericDocValues valuesIn)
-            {
-                this.outerInstance = outerInstance;
-                this.valuesIn = valuesIn;
-            }
-
-            public override long Get(int docID)
-            {
-                return valuesIn.Get(docID);
-            }
-        }
-
         /// <summary>
         /// NOTE: This was LongsFromArray in Lucene
         /// </summary>
@@ -1600,7 +1510,7 @@
             {
                 // Not cached here by FieldCacheImpl (cached instead
                 // per-thread by SegmentReader):
-                return new FieldCache_DoublesAnonymousInnerClassHelper(this, valuesIn);
+                return new FieldCache.Doubles(get: (docID) => J2N.BitConversion.Int64BitsToDouble(valuesIn.Get(docID)));
             }
             else
             {
@@ -1622,24 +1532,6 @@
             }
         }
 
-        private class FieldCache_DoublesAnonymousInnerClassHelper : FieldCache.Doubles
-        {
-            private readonly FieldCacheImpl outerInstance;
-
-            private NumericDocValues valuesIn;
-
-            public FieldCache_DoublesAnonymousInnerClassHelper(FieldCacheImpl outerInstance, NumericDocValues valuesIn)
-            {
-                this.outerInstance = outerInstance;
-                this.valuesIn = valuesIn;
-            }
-
-            public override double Get(int docID)
-            {
-                return J2N.BitConversion.Int64BitsToDouble(valuesIn.Get(docID));
-            }
-        }
-
         internal class DoublesFromArray : FieldCache.Doubles
         {
             private readonly double[] values;