Com\Tecnick\Unicode\Bidi\StepW
Tags
Table of Contents
- $seq : array<string|int, mixed>
- Sequence to process and return
- __construct() : mixed
- Initialize Sequence to process
- getSequence() : array<string|int, mixed>
- Returns the processed array
- processStep() : mixed
- Generic step
- process() : mixed
- Process W steps Resolving Weak Types
- processW1() : mixed
- W1. Examine each nonspacing mark (NSM) in the isolating run sequence, and change the type of the NSM to Other Neutral if the previous character is an isolate initiator or PDI, and to the type of the previous character otherwise.
- processW2() : mixed
- W2. Search backward from each instance of a European number until the first strong type (R, L, AL, or sos) is found. If an AL is found, change the type of the European number to Arabic number.
- processW3() : mixed
- W3. Change all ALs to R.
- processW4() : mixed
- W4. A single European separator between two European numbers changes to a European number.
- processW5() : mixed
- W5. A sequence of European terminators adjacent to European numbers changes to all European numbers.
- processW5a() : mixed
- W5a
- processW5b() : mixed
- W5b
- processW6() : mixed
- W6. Otherwise, separators and terminators change to Other Neutral.
- processW7() : mixed
- W7. Search backward from each instance of a European number until the first strong type (R, L, or sos) is found.
Properties
$seq
Sequence to process and return
protected array<string|int,
mixed> $seq = array()
Methods
__construct()
Initialize Sequence to process
public __construct(array<string|int,
mixed> $seq[,
bool $process
= true
]) : mixed
Parameters
- $seq : array<string|int, mixed>
-
Isolated Sequence array
- $process : bool = true
-
If false disable automatic processing (this is a testing flag)
Return values
mixed —getSequence()
Returns the processed array
public getSequence()
: array<string|int,
mixed>
Return values
array<string|int, mixed> —processStep()
Generic step
public processStep(string $method)
: mixed
Parameters
- $method : string
-
Processing methos
Return values
mixed —process()
Process W steps Resolving Weak Types
protected process()
: mixed
Return values
mixed —processW1()
W1. Examine each nonspacing mark (NSM) in the isolating run sequence, and change the type of the NSM to Other Neutral if the previous character is an isolate initiator or PDI, and to the type of the previous character otherwise.
protected processW1(int $idx)
: mixed
If the NSM is at the start of the isolating run sequence, it will get the type of sos. (Note that in an isolating run sequence, an isolate initiator followed by an NSM or any type other than PDI must be an overflow isolate initiator.)
Parameters
- $idx : int
-
Current character position
Return values
mixed —processW2()
W2. Search backward from each instance of a European number until the first strong type (R, L, AL, or sos) is found. If an AL is found, change the type of the European number to Arabic number.
protected processW2(int $idx)
: mixed
Parameters
- $idx : int
-
Current character position
Return values
mixed —processW3()
W3. Change all ALs to R.
protected processW3(int $idx)
: mixed
Parameters
- $idx : int
-
Current character position
Return values
mixed —processW4()
W4. A single European separator between two European numbers changes to a European number.
protected processW4(int $idx)
: mixed
A single common separator between two numbers of the same type changes to that type.
Parameters
- $idx : int
-
Current character position
Return values
mixed —processW5()
W5. A sequence of European terminators adjacent to European numbers changes to all European numbers.
protected processW5(int $idx)
: mixed
Parameters
- $idx : int
-
Current character position
Return values
mixed —processW5a()
W5a
protected processW5a(int $idx)
: mixed
Parameters
- $idx : int
-
Current character position
Return values
mixed —processW5b()
W5b
protected processW5b(int $idx)
: mixed
Parameters
- $idx : int
-
Current character position
Return values
mixed —processW6()
W6. Otherwise, separators and terminators change to Other Neutral.
protected processW6(int $idx)
: mixed
Parameters
- $idx : int
-
Current character position
Return values
mixed —processW7()
W7. Search backward from each instance of a European number until the first strong type (R, L, or sos) is found.
protected processW7(int $idx)
: mixed
If an L is found, then change the type of the European number to L.
Parameters
- $idx : int
-
Current character position