📄 Syntax.cs
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
using System.Runtime.InteropServices;

namespace GitBrowser.SyntaxHighlighter;

public static partial class Syntax
{
    [LibraryImport("syntax_highlighter", EntryPoint = "can_highlight_file", StringMarshalling = StringMarshalling.Utf8)]
    [return: MarshalAs(UnmanagedType.Bool)]
    public static partial bool CanHighlightFile(string extension);

    [LibraryImport(
        "syntax_highlighter",
        EntryPoint = "highlight_syntax_html",
        StringMarshalling = StringMarshalling.Utf8
    )]
    public static partial string HighlightSyntaxHtml(string extension, string text);
}