Encontrar todas las declaraciones de clase que heredar de otra con Roslyn

tengo unCSharpCompilation instancia que contiene una matriz deSyntaxTreesy estoy tratando de encontrar todas las declaraciones de clase que heredan de una clase

p.ej

// Not in syntax tree but referenced in project
public class Base{}

// In syntax tree, how to find all such classes?
public class MyClass : Base {}

He intentado algunas cosas, pero estoy un poco confundido con todas las opciones y parece que no puedo encontrar la manera correcta de hacerlo.

Intenté obtener los símbolos, pero esto no funciona para los tipos heredados.

SyntaxTree[] trees = context.CSharpCompilation.SyntaxTrees;
IEnumerable<ISymbol> symbols = context.CSharpCompilation.GetSymbolsWithName(x => x == typeof(Base).Name, SymbolFilter.Type);

Muy nuevo para Roslyn y agradecería cualquier sugerencia o sugerencia sobre cómo lograr esto.

Respuestas a la pregunta(3)

Su respuesta a la pregunta