public void Update(TokenPage page, CompilationEnvironment environment) { _flatStatements.Clear(); Pattern pattern = MainPattern.Instance; foreach (PageLine line in page) { pattern.TryMatch(line, environment.Messages, out Expression expression); if (expression != null) { _flatStatements.Add(expression); } } Root = TreeBuilder.Build(_flatStatements, environment); foreach (ITreeTransform transform in _transforms) { transform.Apply(Root, environment); } ParseTestCommands(page, environment.Messages); }
private static void PrintPageInfo(TextWriter writer, TokenPage page, AModel model) { var name = page.Name; var scores = model.GetScores(page); var maxScore = scores.Max(s => s.Score); var label = scores.First(s => s.Score == maxScore).Type; writer.WriteLine($"{name};{label}"); }
public override List <TypeScore> GetScores(TokenPage page) { List <TypeScore> list = new List <TypeScore>(); for (int index = 0; index < Labels.Count; index++) { list.Add(new TypeScore(Labels[index], CreateScore(_hashSets[index], page.Tokens))); } return(list); }
public override List <TypeScore> GetScores(TokenPage page) { List <TypeScore> list = new List <TypeScore>(); for (int index = 0; index < Labels.Count; index++) { list.Add(new TypeScore(Labels[index], CreateScore(_priors[index], _estimates[index], page.Map))); } return(list); }
private void ParseTestCommands(TokenPage page, Messenger messages) { foreach (PageLine line in page) { foreach (Token token in line) { if (token.Type == TokenType.Comment && token.Content.StartsWith("#!")) { TestCommand.ParseAndLinkToken(token, messages); } } } }
public abstract List <TypeScore> GetScores(TokenPage page);
public TokenPageExpectation(TokenPage page, string expectedCategory) { Page = page; ExpectedCategory = expectedCategory; }
public TokenSeeker(TokenPage page) { _page = page; }