private OidEnumerator GetEnumerator () { OidCollection oc = new OidCollection (); oc.Add (new Oid ("1.0")); oc.Add (new Oid ("1.1")); oc.Add (new Oid ("1.2")); return oc.GetEnumerator (); }
public void Constructor () { OidCollection oc = new OidCollection (); // default properties Assert.AreEqual (0, oc.Count, "Count"); Assert.IsTrue (!oc.IsSynchronized, "IsSynchronized"); Assert.IsNotNull (oc.SyncRoot, "SyncRoot"); Assert.IsNotNull (oc.GetEnumerator (), "GetEnumerator"); }
public void Constructor () { OidCollection oc = new OidCollection (); // default properties AssertEquals ("Count", 0, oc.Count); Assert ("IsSynchronized", !oc.IsSynchronized); AssertNotNull ("SyncRoot", oc.SyncRoot); AssertNotNull ("GetEnumerator", oc.GetEnumerator ()); }
private static SafeHGlobalHandle CopyOidsToUnmanagedMemory(OidCollection oids) { SafeHGlobalHandle invalidHandle = SafeHGlobalHandle.InvalidHandle; if ((oids != null) && (oids.Count != 0)) { List<string> list = new List<string>(); OidEnumerator enumerator = oids.GetEnumerator(); while (enumerator.MoveNext()) { Oid current = enumerator.Current; list.Add(current.Value); } IntPtr zero = IntPtr.Zero; IntPtr ptr = IntPtr.Zero; int num = list.Count * Marshal.SizeOf(typeof(IntPtr)); int num2 = 0; foreach (string str in list) { num2 += str.Length + 1; } invalidHandle = SafeHGlobalHandle.AllocHGlobal((int) (num + num2)); zero = new IntPtr(((long) invalidHandle.DangerousGetHandle()) + num); for (int i = 0; i < list.Count; i++) { Marshal.WriteIntPtr(new IntPtr(((long) invalidHandle.DangerousGetHandle()) + (i * Marshal.SizeOf(typeof(IntPtr)))), zero); byte[] bytes = Encoding.ASCII.GetBytes(list[i]); if (bytes.Length != list[i].Length) { throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(new InvalidOperationException(System.IdentityModel.SR.GetString("ObjectIsReadOnly"))); } Marshal.Copy(bytes, 0, zero, bytes.Length); ptr = new IntPtr(((long) zero) + bytes.Length); Marshal.WriteByte(ptr, 0); zero = new IntPtr((((long) zero) + list[i].Length) + 1L); } } return invalidHandle; }