#149 · Herramienta para desarrolladores

C# Parser

Extrae la estructura de un archivo C# sin compilarlo: namespace, directivas using, tipos declarados, propiedades, campos y firmas de métodos. La salida JSON sirve para inventarios, documentación o análisis rápido de archivos aislados. El parser usa reglas conservadoras y por eso mantiene una separación clara frente a un AST real de Roslyn.

Datos de entrada

Código C#
Espacio publicitario

Cómo usar esta herramienta para desarrolladores

  1. Pega un archivo C# representativo.
  2. Ejecuta el parser.
  3. Revisa tipos, propiedades y métodos extraídos.
  4. Descarga el JSON si necesitas alimentar documentación o scripts.

Qué hace esta herramienta para desarrolladores

Extrae la estructura de un archivo C# sin compilarlo: namespace, directivas using, tipos declarados, propiedades, campos y firmas de métodos.

Neutraliza comentarios y cadenas, después identifica namespace, using, class/record/struct/interface/enum, propiedades autoimplementadas y firmas de métodos frecuentes.

La función principal se ejecuta localmente en el navegador y no envía el contenido a una API externa.

Ejemplo

Entrada de ejemplo:

using System;

namespace Demo.Models;

public record Product
{
    public string Name { get; init; }
    public decimal Price { get; init; }

    public decimal PriceWithTax(decimal rate)
    {
        return Price * (1 + rate);
    }
}

Ejecuta la herramienta para obtener una salida basada exactamente en estas reglas locales.

Casos de uso

  • Inventariar modelos y servicios C#.
  • Extraer propiedades de DTOs.
  • Crear índices técnicos de archivos aislados.
  • Revisar rápidamente namespace y using.

Consejos para obtener resultados fiables

  • Trabaja con un archivo o fragmento representativo en cada ejecución.
  • Revisa los avisos en contexto antes de modificar código válido.
  • Conserva una copia del original cuando vayas a aplicar cambios masivos.
  • Usa el compilador y los analyzers del proyecto para la verificación definitiva.
  • Evita incluir secretos, tokens o credenciales en ejemplos que vayas a compartir.

Detalles del procesamiento

Neutraliza comentarios y cadenas, después identifica namespace, using, class/record/struct/interface/enum, propiedades autoimplementadas y firmas de métodos frecuentes.

No crea un SyntaxTree de Roslyn, no resuelve símbolos y puede omitir sintaxis avanzada, expresiones lambda complejas, source generators o miembros con formatos poco habituales.

Preguntas frecuentes

¿C# Parser genera un SyntaxTree compatible con Roslyn?

No. Produce un resumen JSON propio y ligero, no un árbol sintáctico de Microsoft.CodeAnalysis.

¿Reconoce class, record, struct e interface?

Sí, detecta declaraciones habituales de esos tipos y también enum.

¿Extrae propiedades autoimplementadas con init?

Sí, reconoce formas comunes con get/set y get/init.

¿Puede resolver tipos definidos en otros archivos o paquetes NuGet?

No. No carga proyectos ni referencias y conserva los nombres tal como aparecen en el texto.

¿Qué formato tiene la salida del parser C#?

Un JSON con namespace, usings, tipos, propiedades, campos y métodos detectados.

Resumen de módulos

MóduloDescripción
EntradaCódigo C#
ProcesamientoNeutraliza comentarios y cadenas, después identifica namespace, using, class/record/struct/interface/enum, propiedades autoimplementadas y firmas de métodos frecuentes.
SalidaEstructura detectada
Ejecución100 % local en el navegador