/// <summary>
 /// Constructor
 /// </summary>
 /// <param name="methodProvider">Owner</param>
 /// <param name="name">Name</param>
 /// <param name="span">Span</param>
 /// <param name="tokens">Tokens of all methods that reference this method body</param>
 protected DotNetMethodBody(DotNetMethodProvider methodProvider, string name, HexBufferSpan span, ReadOnlyCollection <uint> tokens)
     : base(name, span)
 {
     if (tokens == null)
     {
         throw new ArgumentOutOfRangeException(nameof(tokens));
     }
     if (tokens.Count == 0)
     {
         throw new ArgumentOutOfRangeException(nameof(tokens));
     }
     MethodProvider = methodProvider ?? throw new ArgumentNullException(nameof(methodProvider));
     Tokens         = tokens;
 }
 /// <summary>
 /// Constructor
 /// </summary>
 /// <param name="methodProvider">Owner</param>
 /// <param name="span">Span</param>
 /// <param name="tokens">Tokens of all methods that reference this method body</param>
 protected FatMethodBody(DotNetMethodProvider methodProvider, HexBufferSpan span, ReadOnlyCollection <uint> tokens)
     : base(methodProvider, NAME, span, tokens)
 {
 }