Span 结构

定义

一个不可变整数间隔,用于描述从 StartEnd 左侧关闭并在右侧打开的的值范围: [Start.。 结束) 。 跨度通常应用于 ITextSnapshot 来表示文本跨度,但它独立于任何特定的文本缓冲区或快照。

public value class Span
public value class Span
struct Span
public struct Span
type Span = struct
Public Structure Span
继承
Span

注解

此结构表示从到的一系列值的不可变整数时间间隔 Start End 。 它在左侧关闭,并在右侧打开: [Start .. End) 。 在的上下文中 ITextSnapshot ,它表示一段文本,但范围结构本身独立于任何特定的文本缓冲区或快照。

构造函数

Span(Int32, Int32)

Span使用给定的起点和长度初始化的新实例。

属性

End

跨度的结束。 范围在右侧以开放式状态结束,即开始 + 长度 = 结束。

IsEmpty

确定此范围是否为空。

Length

跨度的长度,该长度始终为非负值。

Start

跨度的起始索引。

方法

Contains(Int32)

确定位置是否位于范围内。

Contains(Span)

确定是否 span 完全落在此范围内。

Equals(Object)

确定两个范围是否相同。

FromBounds(Int32, Int32)

Span使用给定的开始位置和结束位置初始化的新实例。

GetHashCode()

为类型提供哈希函数。

Intersection(Span)

返回与给定跨度的交集; 如果没有交集,则返回 null。

IntersectsWith(Span)

确定是否 span 相交此跨度。 如果两个范围具有相同的位置或在一个跨度的末尾与另一个范围的起始位置一致,则将两个范围视为相交。

Overlap(Span)

返回与给定跨度的重叠,如果不存在重叠,则返回 null。

OverlapsWith(Span)

确定是否与 span 此跨度重叠。 如果两个范围处于公用位置并且两者都不为空,则将其视为重叠。 空范围不与任何其他范围重叠。

ToString()

提供跨度的字符串表示形式。

运算符

Equality(Span, Span)

确定两个范围是否相同

Inequality(Span, Span)

确定两个范围是否不同。

适用于