Submodule ikvm reflection
[mono.git] / mcs / class / IKVM.Reflection / Emit / CustomModifiersBuilder.cs
diff --git a/mcs/class/IKVM.Reflection/Emit/CustomModifiersBuilder.cs b/mcs/class/IKVM.Reflection/Emit/CustomModifiersBuilder.cs
deleted file mode 100644 (file)
index 91f5b83..0000000
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
-  Copyright (C) 2011 Jeroen Frijters
-
-  This software is provided 'as-is', without any express or implied
-  warranty.  In no event will the authors be held liable for any damages
-  arising from the use of this software.
-
-  Permission is granted to anyone to use this software for any purpose,
-  including commercial applications, and to alter it and redistribute it
-  freely, subject to the following restrictions:
-
-  1. The origin of this software must not be misrepresented; you must not
-     claim that you wrote the original software. If you use this software
-     in a product, an acknowledgment in the product documentation would be
-     appreciated but is not required.
-  2. Altered source versions must be plainly marked as such, and must not be
-     misrepresented as being the original software.
-  3. This notice may not be removed or altered from any source distribution.
-
-  Jeroen Frijters
-  jeroen@frijters.net
-  
-*/
-using System;
-using System.Collections.Generic;
-using System.Text;
-
-namespace IKVM.Reflection.Emit
-{
-       public sealed class CustomModifiersBuilder
-       {
-               private readonly List<Item> list = new List<Item>();
-
-               internal struct Item
-               {
-                       internal Type type;
-                       internal bool required;
-               }
-
-               public void AddRequired(Type type)
-               {
-                       Item item;
-                       item.type = type;
-                       item.required = true;
-                       list.Add(item);
-               }
-
-               public void AddOptional(Type type)
-               {
-                       Item item;
-                       item.type = type;
-                       item.required = false;
-                       list.Add(item);
-               }
-
-               // this adds the custom modifiers in the same order as the normal SRE APIs
-               // (the advantage over using the SRE APIs is that a CustomModifiers object is slightly more efficient,
-               // because unlike the Type arrays it doesn't need to be copied)
-               public void Add(Type[] requiredCustomModifiers, Type[] optionalCustomModifiers)
-               {
-                       foreach (CustomModifiers.Entry entry in CustomModifiers.FromReqOpt(requiredCustomModifiers, optionalCustomModifiers))
-                       {
-                               Item item;
-                               item.type = entry.Type;
-                               item.required = entry.IsRequired;
-                               list.Add(item);
-                       }
-               }
-
-               public CustomModifiers Create()
-               {
-                       return new CustomModifiers(list);
-               }
-       }
-}