Skip to content

Instantly share code, notes, and snippets.

View manio143's full-sized avatar

Marian Dziubiak manio143

View GitHub Profile
@manio143
manio143 / StrideRoslynFHL22.md
Last active March 24, 2022 22:12
Plans for Stride Roslyn extension for Spring FHL

Creating a Roslyn extension for Stride.Core

This project is meant to be a learning opportunity for me, to dive deeper into Roslyn analyzers and code generators. During my FHL week (21-25.03.2022) I will learn how analyzers and code generators work, when in the compilation pipeline they're invoked, how to write them and how to debug them.

Goals

The project has a goal - create a new package for Stride Stride.Core.Compilation under netstandard2.0 which will supersede AssemblyProcessor in the following:

DataSerializer generation

Project loading

Given path to sln file or project file.

It starts in SessionViewModel.OpenSession with a call to PackageSession.Load. -> writes into sessionResult then it calls PackageSession.LoadMissingReferences finally we create a new SessionViewModel on the UI thread and call LoadAssetsFromPackages on it.

PackageSession.Load