13 writes to _endArc
System.Speech (13)
Internal\SrgsCompiler\Item.cs (5)
53
_startArc =
_endArc
= _backend.EpsilonTransition(_repeatProbability);
69
_endArc
= InsertState(_endArc!, 1.0f, Position.After);
93
_endArc
= newEndState.OutArcs.First;
101
_endArc
= InsertState(_endArc, 1.0f, Position.After);
124
_endArc
= InsertState(_endArc, 1.0f, Position.After);
Internal\SrgsCompiler\OneOf.cs (2)
31
_endArc
= _backend.EpsilonTransition(1.0f);
54
_endArc
= TrimEnd(_endArc, _backend);
Internal\SrgsCompiler\ParseElementCollection.cs (6)
38
_endArc
= tagTransition;
42
_startArc ??=
_endArc
= _backend.EpsilonTransition(1.0f);
51
_startArc ??=
_endArc
= _backend.EpsilonTransition(1.0f);
180
_endArc
= end;
195
_endArc
= TrimEnd(_endArc, _backend);
298
_endArc
= end;
51 references to _endArc
System.Speech (51)
Internal\SrgsCompiler\Item.cs (18)
36
if (_maxRepeat != _minRepeat && _startArc != null && _startArc ==
_endArc
&&
_endArc
.IsEpsilonTransition && !
_endArc
.IsPropertylessTransition)
69
_endArc = InsertState(
_endArc
!, 1.0f, Position.After);
71
AddEpsilonTransition(
_endArc
.Start, startState, 1 - _repeatProbability);
81
System.Diagnostics.Debug.Assert(
_endArc
?.Start != null);
82
State newStartState = _backend.CreateNewState(
_endArc
.Start.Rule);
85
State newEndState = _backend.CloneSubGraph(currentStartState!,
_endArc
.Start, newStartState);
89
_endArc
.End = newStartState;
92
System.Diagnostics.Debug.Assert(newEndState.OutArcs.CountIsOne && Arc.CompareContent(
_endArc
, newEndState.OutArcs.First) == 0);
101
_endArc = InsertState(
_endArc
, 1.0f, Position.After);
103
AddEpsilonTransition(
_endArc
.Start, newStartState, 1 - _repeatProbability);
119
if (_minRepeat == 0 && (_startArc !=
_endArc
|| !_startArc.IsEpsilonTransition))
121
System.Diagnostics.Debug.Assert(
_endArc
!= null);
122
if (!
_endArc
.IsEpsilonTransition ||
_endArc
.SemanticTagCount > 0)
124
_endArc = InsertState(
_endArc
, 1.0f, Position.After);
126
AddEpsilonTransition(startState,
_endArc
.Start, 1 - _repeatProbability);
Internal\SrgsCompiler\OneOf.cs (2)
32
_endArc
.Start = _endState;
54
_endArc = TrimEnd(
_endArc
, _backend);
Internal\SrgsCompiler\ParseElementCollection.cs (29)
27
if (
_endArc
!= null &&
_endArc
.RuleRef != null)
37
_endArc
.End = state;
43
_backend.AddSemanticInterpretationTag(
_endArc
!, propertyInfo);
52
_backend.AddPropertyTag(_startArc,
_endArc
!, propertyInfo);
159
parent.AddArc(_startArc,
_endArc
!);
187
if (
_endArc
!.IsEpsilonTransition && start.IsEpsilonTransition)
195
_endArc = TrimEnd(
_endArc
, _backend);
198
if (
_endArc
.IsEpsilonTransition)
201
State? from =
_endArc
.Start;
208
Arc.CopyTags(
_endArc
, start, Direction.Right);
214
Arc.CopyTags(start,
_endArc
, Direction.Left);
215
end =
_endArc
;
220
if (
_endArc
.IsPropertylessTransition && start.IsPropertylessTransition)
224
_endArc
.Start = null;
230
Arc.CopyTags(start,
_endArc
, Direction.Left);
232
_endArc
.End = to;
242
if (
_endArc
.IsEpsilonTransition && Graph.CanTagsBeMoved(
_endArc
, start))
245
Arc.CopyTags(
_endArc
, start, Direction.Right);
247
if (
_endArc
.Start != null)
250
state =
_endArc
.Start;
251
_endArc
.Start = null;
257
if (
_endArc
== _startArc)
265
if (start.IsEpsilonTransition && Graph.CanTagsBeMoved(start,
_endArc
))
268
Arc.CopyTags(start,
_endArc
, Direction.Left);
275
_endArc
.End = state;
280
end =
_endArc
;
289
_endArc
.End = state;
Internal\SrgsCompiler\Rule.cs (2)
155
if (
_endArc
== null)
163
TrimEndEpsilons(
_endArc
, _backend);