PeachDrawing.Text

PeachDrawing.Text.Unicode

EmbeddingSpan Struct

A directional push that applies to a stretch of the analysed text without any control character being present in it: how a host with its own markup (CSS unicode-bidi, an SVG direction attribute) tells Analyze(string, BaseDirection, IReadOnlyList<EmbeddingSpan>) about embeddings the string itself does not spell out.

public readonly record struct EmbeddingSpan : System.IEquatable<PeachDrawing.Text.Unicode.EmbeddingSpan>

Implements System.IEquatable<EmbeddingSpan>

Remarks

The analysis treats a span exactly as though a real Push control character opened at Start and its matching terminator closed at End. Spans and real control characters may be mixed in one text. Of two spans that share a start, the one that comes earlier in the list is the outer one.

Constructors  
EmbeddingSpan(int, int, ExplicitPush) A directional push that applies to a stretch of the analysed text without any control character being present in it: how a host with its own markup (CSS unicode-bidi, an SVG direction attribute) tells Analyze(string, BaseDirection, IReadOnlyList<EmbeddingSpan>) about embeddings the string itself does not spell out.
Properties  
End The index just past the last code unit the span covers.
Length How many code units the push covers.
Push Which push opens the span.
Start Index, in UTF-16 code units, of the first character the push covers.