コード例 #1
0
ファイル: MatchResult.cs プロジェクト: superdullwolf/PT.PM
        public override string ToString()
        {
            TextSpan lastTextSpan = TextSpans.Last();
            string   patternMatch = SourceFile.GetSubstring(lastTextSpan) + " " + SourceFile.GetLineColumnTextSpan(lastTextSpan);

            return($"{SourceFile}: pattern {Pattern} match: {patternMatch}");
        }
コード例 #2
0
            public void ReturnsTheExpectedInputIfThereIsOnlyOneInput()
            {
                var source = "0123456789";
                var input  = MakeSpan(source, 0, 5);
                var actual = TextSpans.Join(input);

                actual.Position.Absolute.Should().Be(0);
                actual.Length.Should().Be(5);
            }
コード例 #3
0
            public void ReturnsTheExpectedSpanWithTwoInputs()
            {
                var source = "0123456789";
                var actual = TextSpans.Join(
                    MakeSpan(source, 1, 3),
                    MakeSpan(source, 4, 2)
                    );

                actual.Position.Absolute.Should().Be(1);
                actual.Length.Should().Be(5);
            }
コード例 #4
0
            public void ReturnsTheExpectedSpanWithMultipleInputsInNonSequentialOrder()
            {
                var source = "0123456789";
                var actual = TextSpans.Join(
                    MakeSpan(source, 2, 1),
                    MakeSpan(source, 1, 3),
                    MakeSpan(source, 3, 4)
                    );

                actual.Position.Absolute.Should().Be(1);
                actual.Length.Should().Be(6);
            }
コード例 #5
0
ファイル: MatchResult.cs プロジェクト: smartfish/PT.PM
 public override string ToString()
 {
     return($"Pattern {Pattern} mathched at {(string.Join(", ", TextSpans.Select(textSpan => SourceCodeFile.GetLineColumnTextSpan(textSpan))))}");
 }