IDL4-CSHARP 1.0 FTF Avatar
  1. OMG Issue

IDL4CSP — System.Collections.IList interface provides limited functionality

  • Key: IDL4CSP-10
  • Status: closed  
  • Source: Real-Time Innovations ( Mr. Fernando Garcia-Aranda)
  • Summary:

    Sequences are currently mapped to System.Collections.IList<T>, which enables vendors to roll out their own sequence implementation while maintaining compatibility with other list implementations users may use in application code. Unfortunately, unlike the interfaces we chose in language mappings like Java, IList lacks support for mechanisms to handle the internal sequence that are important to implement certain patterns. For example, IList lacks methods like AddRange(), which are necessary to implement patterns to repopulate a collections (see https://docs.microsoft.com/en-us/visualstudio/code-quality/ca2227?view=vs-2019 and IDL4CSP-1).

    As discussed in the IDL WG at the September meeting, it would be desirable to map Sequences to an Omg.Types.ISequence<T> interface that extends System.Collections.Generic.IList<T> and adds all the properties and methods in the System.Collections.Generlic.List<T> class.

  • Reported: IDL4-CSHARP 1.0a1 — Wed, 30 Sep 2020 09:37 GMT
  • Disposition: Resolved — IDL4-CSHARP 1.0
  • Disposition Summary:

    Define a more complete interface for Sequence Types

    This resolution introduces Omg.Types.ISequence, an interface to represent sequence types that is more complete than the generic System.Collections.Generic.IList<T>.

    Omg.Types.ISequence provides the same methods and constructors as the standard C# System.Collections.Generic.List<T>.

    The resolution of this issue requires applying the resolution of IDL4CSP-1 first.

  • Updated: Mon, 29 Mar 2021 12:23 GMT