public INfaVM Visit(CharSetNode node, INfaVM code) { code.Fetch(); if (node.Characters.Count != 1) { throw new NotImplementedException("TODO: ISreVM Compilation of multiple charact csets."); } code.IsA(node.Characters.First()); return(code); }
public NfaFragment Visit(CharSetNode node) { var s = new NfaState(node.Characters); return(new NfaFragment { Start = s, Outs = new List <List <NfaState> > { s.Out } }); }
public TextWriter Visit(CharSetNode node) { NewLine(); WriteIntSet(node.Characters); return(writer); }