Eat() public method

public Eat ( string line, int lineCnt ) : WhitespaceMorsel
line string
lineCnt int
return WhitespaceMorsel
Beispiel #1
0
 public int ItCountsDeltaIndentsDivibleByLearnedIndentsPerLine(string whitespaceTrainer,string previous, string line)
 {
     var sut = new WhitespaceEater();
     var lineCnt = 1;
     foreach(var trainer in whitespaceTrainer.Split(';'))
     {
         sut.Eat(trainer, lineCnt++);
     }
     sut.Eat(previous, lineCnt++);
     return sut.Eat(line, lineCnt++).DeltaIndents;
 }
Beispiel #2
0
        private string InterpretSpaces(List <Token> tokens, string line)
        {
            var morsel = eater.Eat(line, lineNum);

            foreach (var blah in Enumerable.Range(0, Math.Abs(morsel.DeltaIndents)))
            {
                tokens.Add(new Token()
                {
                    Kind = morsel.DeltaIndents > 0 ? TokenKind.StartGroup : TokenKind.EndGroup,
                    Line = lineNum
                });
            }
            return(morsel.Line);
        }
Beispiel #3
0
 public int ItCountsIndentsDivibleByLearnedIndentsPerLine(string previous, string line)
 {
     var sut = new WhitespaceEater();
     sut.Eat(previous, 1);
     return sut.Eat(line, 2).Indents;
 }
Beispiel #4
0
 public int ItCountsIndents(string line)
 {
     var sut = new WhitespaceEater();
     return sut.Eat(line, 1).Indents;
 }
Beispiel #5
0
 public void ItDoesNotAllowMoreThanOneTabbingLevelIncreaseAtATime()
 {
     var sut = new WhitespaceEater();
     sut.Eat("\t", 0);
     sut.Eat("a", 1);
     Assert.Catch<InconsistentWhitespaceException>(() => sut.Eat("\t\tb", 2));
 }
Beispiel #6
0
 public int ItCountsOpenIndents(string whitespaceTrainer,string line)
 {
     var sut = new WhitespaceEater();
     sut.Eat(whitespaceTrainer, 0);
     sut.Eat(line, 1);
     return sut.OpenIndents;
 }