// WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
using System.Diagnostics;
-using System.Reflection.Emit;
using System.Globalization;
using System.Runtime.CompilerServices;
using System.Runtime.InteropServices;
[ComDefaultInterfaceAttribute (typeof (_FieldInfo))]
[Serializable]
[ClassInterface(ClassInterfaceType.None)]
+#if MOBILE
+ public abstract class FieldInfo : MemberInfo {
+#else
public abstract class FieldInfo : MemberInfo, _FieldInfo {
-
+#endif
public abstract FieldAttributes Attributes {get;}
public abstract RuntimeFieldHandle FieldHandle {get;}
}
[MethodImplAttribute(MethodImplOptions.InternalCall)]
- private extern UnmanagedMarshal GetUnmanagedMarshal ();
-
- internal virtual UnmanagedMarshal UMarshal {
- get {
- return GetUnmanagedMarshal ();
- }
- }
+ private extern MarshalAsAttribute get_marshal_info ();
internal object[] GetPseudoCustomAttributes ()
{
if (DeclaringType.IsExplicitLayout)
count ++;
- UnmanagedMarshal marshalAs = UMarshal;
+ MarshalAsAttribute marshalAs = get_marshal_info ();
if (marshalAs != null)
count ++;
if (DeclaringType.IsExplicitLayout)
attrs [count ++] = new FieldOffsetAttribute (GetFieldOffset ());
if (marshalAs != null)
- attrs [count ++] = marshalAs.ToMarshalAsAttribute ();
+ attrs [count ++] = marshalAs;
return attrs;
}
}
}
#endif
+
+#if !MOBILE
void _FieldInfo.GetIDsOfNames ([In] ref Guid riid, IntPtr rgszNames, uint cNames, uint lcid, IntPtr rgDispId)
{
throw new NotImplementedException ();
}
+ Type _FieldInfo.GetType ()
+ {
+ // Required or object::GetType becomes virtual final
+ return base.GetType ();
+ }
+
void _FieldInfo.GetTypeInfo (uint iTInfo, uint lcid, IntPtr ppTInfo)
{
throw new NotImplementedException ();
{
throw new NotImplementedException ();
}
+#endif
}
}