![]() * Add first pass of the "convert to generated COM interface" analyzer and add tests for the various other analyzers we are going to introduce. * Get all analyzer-specific components of the "convert" tests passing. * Implement all interface-attribute-level changes in the code fixer. * Add bool marshalling insertion logic to the fixer. * Add support for removing shadowing members from interfaces. * Rename fixer * ActiveIssue the new tests * Implement basic AddGeneratedComClass analyzer/fixer * Add ComHosting + GeneratedComInterface analyzer implementation. * Implement the "runtime COM APIs with source-generated COM types" analyzer. * Factor out a base class from the ConvertToLibraryImportFixer so we can share it with the ComInterfaceGenerator-family of fixers. * Move more of the ConvertToLibraryImportFixer to use SyntaxGenerator APIs instead of dropping to C#-specific syntax APIs (improves consistency throughout our code fixes) * Move support for specifying explicit boolean marshalling rules up to the base class. * Move the code fixes in ComInterfaceGenerator over to using the ConvertToSourceGeneratedInteropFixer base type. * Remove use of multicasted delegates and use a more traditional "array of delegates" model. * Do some refactoring to move more into the new fixer base class. * Remove custom CodeAction-derived types now that we have a record type to represent fixes from the subclasses. * Make sure we make types and containing types partial * Fix negative test. * Add tests for transitive interface inheritance and add iids. * Change bool parsing for internal parsing and add warning annotation text. Update diagnostics list md. |
||
---|---|---|
.. | ||
coding-guidelines | ||
design | ||
infra | ||
issue-mappings | ||
project | ||
tools/illink | ||
workflow | ||
area-owners.json | ||
area-owners.md | ||
deep-dive-blog-posts.md | ||
issue-cleanup.md | ||
issues-pr-management.md | ||
README.md |
Documents Index
This repo includes several documents that explain both high-level and low-level concepts about the .NET runtime and libraries. These are very useful for contributors, to get context that can be very difficult to acquire from just reading code.
Intro to .NET
.NET is a self-contained .NET runtime and framework that implements ECMA 335. It can be (and has been) ported to multiple architectures and platforms. It support a variety of installation options, having no specific deployment requirements itself.
Getting Started
Workflow (Building, testing, benchmarking, profiling, etc.)
If you want to contribute a code change to this repo, start here.
Design Docs
- .NET Globalization Invariant Mode
- WASM Globalization Icu
- Cross-Platform Cryptography
- Many more under design/features
The Book of the Runtime is a set of chapters that go in depth into various interesting aspects of the design of the .NET Framework.
For your convenience, here are a few quick links to popular chapters:
For additional information, see this list of blog posts that provide a 'deep-dive' into the CoreCLR source code
Coding Guidelines
- CLR Coding Guide
- CLR JIT Coding Conventions
- Cross Platform Performance and Eventing Design
- Adding New Events to the VM
- C# coding style
- Framework Design Guidelines
- Cross-Platform Guidelines
- Performance Guidelines
- Interop Guidelines
- Breaking Changes
- Breaking Change Definitions
- Breaking Change Rules
- Project Guidelines
- Adding APIs Guidelines
Project Docs
To be added. Visit the project docs folder directly meanwhile.