private object ReadIlInstruction()

in ReSharper.FSharp/src/FSharp/FSharp.Psi/src/Metadata/FSharpMetadataReader.cs [1383:1435]


    private object ReadIlInstruction()
    {
      var tag = ReadByteTagValue(66);
      if (tag == 1)
        ReadPackedInt();

      else if (tag is 4 or 24 or 55)
      {
        ReadIlMethodRef();
        ReadIlType();
        ReadIlTypes();
      }

      else if (tag is 20 or 22 or 23)
        ReadPackedIntTagValue("basicTypeTag", 13);

      if (tag == 31 || tag == 33 | tag == 34 || tag == 36)
      {
        ReadPackedIntTagValue("volatilityTag", 1);
        ReadIlFieldSpec();
      }

      if (tag == 32 || tag == 35)
        ReadIlFieldSpec();

      if (tag == 43 || tag == 38 || tag == 29 || tag == 61 || tag == 27 || tag == 28 || tag == 25 || tag == 37 ||
          tag == 58 || tag == 3 || tag == 63 || tag == 65)
        ReadIlType();

      if (tag == 26)
        ReadUniqueString();

      if (tag == 39 || tag == 60 || tag == 59)
      {
        ReadIlArrayShape();
        ReadIlType();
      }

      if (tag == 41)
      {
        ReadPackedIntTagValue("readonlyTag", 1);
        ReadIlArrayShape();
        ReadIlType();
      }

      if (tag == 62)
      {
        ReadPackedInt();
        ReadPackedInt();
      }

      return null;
    }