4#include <system/shared_ptr.h> 
    5#include <system/object.h> 
    6#include <system/object_ext.h> 
    7#include <system/details/pointer_collection_helpers.h> 
    8#include <system/array.h> 
   66    typedef ::System::BaseTypesInfo<BaseType> ThisTypeBaseTypesInfo;
 
   67    RTTI_INFO_TEMPLATE_CLASS(
ThisType, ThisTypeBaseTypesInfo);
 
   89            throw ArgumentNullException(u
"array");
 
   93        m_count = array->get_Length();
 
  100            throw ArgumentNullException(u
"array");
 
  104            throw ArgumentOutOfRangeException(u
"offset_ArgumentOutOfRange_NeedNonNegNum");
 
  108            throw ArgumentOutOfRangeException(u
"count_ArgumentOutOfRange_NeedNonNegNum");
 
  110        if (array->get_Length() - offset < count)
 
  112            throw ArgumentException(u
"Argument_InvalidOffLen");
 
  138        return obj.m_array == m_array && obj.m_offset == m_offset && obj.m_count == m_count;
 
Represents a segment of the one-dimensional array. This type should be allocated on stack and passed ...
Definition: array_segment.h:62
 
int32_t GetHashCode() const override
Analog of C# Object.GetHashCode() method. Enables hashing of custom objects.
Definition: array_segment.h:119
 
ArraySegment(System::ArrayPtr< T > array)
Definition: array_segment.h:85
 
int32_t get_Count()
Definition: array_segment.h:80
 
ArraySegment(System::ArrayPtr< T > array, int32_t offset, int32_t count)
Definition: array_segment.h:96
 
int32_t get_Offset()
Definition: array_segment.h:75
 
System::ArrayPtr< T > get_Array()
Definition: array_segment.h:70
 
bool Equals(ArraySegment< T > obj)
Definition: array_segment.h:136
 
virtual bool Equals(System::SharedPtr< Object > obj) override
Definition: array_segment.h:124
 
ArraySegment()
Definition: array_segment.h:141
 
static std::enable_if< std::is_convertible< T, Object >::value &&std::is_final< T >::value &&!System::IsBoxable< T >::value &&System::IsSmartPtr< U >::value, bool >::type Is(const U &obj)
Implements 'is' operator translation. Specialization for pointer types optimized for 'final' classes.
Definition: object_ext.h:352
 
static std::enable_if< std::is_enum< T >::value, T >::type Unbox(const SmartPtr< Object > &obj)
Unboxes value types after converting to Object. Implementation for enum types.
Definition: object_ext.h:233
 
static int GetHashCode(const T &obj)
Implements GetHashCode() calls; works on both Object subclasses and unrelated types.
Definition: object_ext.h:28
 
static std::enable_if< IsExceptionWrapper< T >::value, bool >::type Equals(const T &obj, const T2 &another)
Definition: object_ext.h:34
 
Base class that enables using methods available for System.Object class in C#. All non-trivial classe...
Definition: object.h:62
 
Pointer class to wrap types being allocated on heap. Use it to manage memory for classes inheriting O...
Definition: smart_ptr.h:180
 
Definition: db_command.h:9
 
bool operator!=(ArraySegment< T > a, ArraySegment< T > b)
Definition: array_segment.h:156
 
bool operator==(ArraySegment< T > a, ArraySegment< T > b)
Definition: array_segment.h:150