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