4 types derived from ExceptionRegion
ILAssembler (4)
EntityRegistry.cs (4)
2328
internal sealed record CatchRegion(LabelHandle TryStart, LabelHandle TryEnd, LabelHandle HandlerStart, LabelHandle HandlerEnd, TypeEntity CatchType, Location Location) :
ExceptionRegion
(TryStart, TryEnd, HandlerStart, HandlerEnd, Location);
2329
internal sealed record FinallyRegion(LabelHandle TryStart, LabelHandle TryEnd, LabelHandle HandlerStart, LabelHandle HandlerEnd, Location Location) :
ExceptionRegion
(TryStart, TryEnd, HandlerStart, HandlerEnd, Location);
2330
internal sealed record FaultRegion(LabelHandle TryStart, LabelHandle TryEnd, LabelHandle HandlerStart, LabelHandle HandlerEnd, Location Location) :
ExceptionRegion
(TryStart, TryEnd, HandlerStart, HandlerEnd, Location);
2331
internal sealed record FilterRegion(LabelHandle TryStart, LabelHandle TryEnd, LabelHandle HandlerStart, LabelHandle HandlerEnd, LabelHandle FilterStart, Location Location) :
ExceptionRegion
(TryStart, TryEnd, HandlerStart, HandlerEnd, Location);
15 references to ExceptionRegion
ILAssembler (15)
Actions\GrammarActions.MethodBodies.ExceptionHandling.cs (5)
114
AddExceptionRegion(new EntityRegistry.
ExceptionRegion
.FinallyRegion(
122
AddExceptionRegion(new EntityRegistry.
ExceptionRegion
.FaultRegion(
130
AddExceptionRegion(new EntityRegistry.
ExceptionRegion
.CatchRegion(
140
AddExceptionRegion(new EntityRegistry.
ExceptionRegion
.FilterRegion(
212
private void AddExceptionRegion(EntityRegistry.
ExceptionRegion
region)
EntityRegistry.cs (1)
2015
public List<
ExceptionRegion
> ExceptionRegions { get; } = new();
MethodBodyWriter.cs (9)
223
public IReadOnlyList<Diagnostic> Complete(IReadOnlyList<EntityRegistry.
ExceptionRegion
> exceptionRegions)
232
foreach (
var
region in exceptionRegions)
240
if (region is EntityRegistry.
ExceptionRegion
.FilterRegion filter)
262
MethodBodyAttributes attributes, IReadOnlyList<EntityRegistry.
ExceptionRegion
> exceptionRegions, bool hasDynamicStackAllocation)
266
foreach (
var
region in exceptionRegions)
274
EntityRegistry.
ExceptionRegion
.CatchRegion clause => (ExceptionRegionKind.Catch, MetadataTokens.GetToken(clause.CatchType.Handle)),
275
EntityRegistry.
ExceptionRegion
.FilterRegion clause => (ExceptionRegionKind.Filter, GetLabelOffset(clause.FilterStart)),
276
EntityRegistry.
ExceptionRegion
.FinallyRegion => (ExceptionRegionKind.Finally, 0),
277
EntityRegistry.
ExceptionRegion
.FaultRegion => (ExceptionRegionKind.Fault, 0),