воскресенье, 2 апреля 2023 г.

CIL Tools v2.6 is released

 Download on Github releases

Changes in new version:

This library provides APIs related to source code tokenization. It could be useful for implementing a syntax highlighting in applications that display source code.

CilTools.BytecodeAnalysis

  • Add new CilTools.Syntax.Tokens API for converting text into sequence of tokens
  • Add support for .pack and .size directives
  • Expose constant values as LiteralSyntax instead of GenericSyntax in Syntax API
  • Update disassembler to not escape math symbols in string literals
  • Fix CilInstruction.Parse to use invariant culture when parsing floating point values

CilTools.Metadata

  • Add support for getting inherited members in TypeDef and TypeRef. Now APIs like GetMembers return both declared and inherited members by default, and only declared ones when DeclaredOnly flag is specified.
  • Implement Type.StructLayoutAttribute property on TypeDef
  • Fix Type.IsValueType and Type.IsEnum returning incorrect values for .NET Core assemblies
  • Fix token resolution to throw ArgumentOutOfRangeException instead of BadImageFormatException on out-of-range tokens

CIL View

  • Add support for .pack and .size directives
  • Add support for C# verbatim strings in source viewer
  • Use .NET Core runtime directory for .NET Standard 2.1 targeting assemblies when navigating to methods from BCL types
  • Update disassembler to not escape math symbols in string literals
  • Fix syntax highlighting for constant values