External API Array Support

XJEase Arrays are compatible with the following .NET parameter types:

  • System.Collections.Generic.List
  • System.Collections.Generic.IEnumerable
  • System.Collections.Generic.ICollection
  • System.Collections.Generic.IReadOnlyCollection
  • System.Collections.Generic.IList
  • System.Collections.Generic.IReadOnlyList
  • System.Array

Arrays Passed By Value

Arrays are converted and copied to External APIs by value. Returns, out and ref arrays are copied back into XJEase arrays by value. This can have an impact on performance and memory usage when using very large arrays.

Passing To External APIs Using IEnumerable

Arrays passed into External APIs with IEnumerable will take advantage of lazy evaluation. They are not copied immediately on entry and this can improve performance with larger arrays if they're not entirely fetched.