public static string RemoveComments(string Input)
{
var CTokenizer = new CTokenizer(Input, TokenizeSpaces: true);
var Tokens = CTokenizer.Tokenize().GetEnumerator();
string Output = "";
while (Tokens.MoveNext())
{
switch (Tokens.Current.Raw)
{
case "//":
Output += new String(' ', CTokenizer.SkipUntilSequence("\n") - 1) + "\n";
break;
case "/*":
Output += ReplaceNonSpaceWithSpaces(CTokenizer.ReadUntilSequence("*/"));
break;
default:
Output += Tokens.Current.Raw;
break;
}
}
return Output;
}