コード例 #1
0
    private void Test(string[] header, string[] text)
    {
      string headerString = string.Join (Environment.NewLine, header);
      string textString = string.Join(Environment.NewLine, text);
      
      if (header.Length > 0 && text.Length > 0)
        headerString += Environment.NewLine;

      var parser = new CommentParser ("//", "/*", "*/", "#region", "#endregion");
      Assert.AreEqual (headerString, parser.Parse (headerString + textString));
    }
コード例 #2
0
 public static bool Validate(string header, CommentParser commentParser)
 {
     try
     {
         var result = commentParser.Parse(header);
         return(result == header);
     }
     catch (ParseException)
     {
         return(false);
     }
 }
コード例 #3
0
        public Document(TextDocument document, Language language, string[] lines, ProjectItem projectItem, IEnumerable<string> keywords = null)
        {
            _document = document;

              _lineEndingInDocument = NewLineManager.DetectMostFrequentLineEnd (GetText ());

              string inputText = CreateInputText(lines);
              _header = new DocumentHeader (document, inputText, new DocumentHeaderProperties (projectItem));
              _keywords = keywords;

              _language = language;

              _commentParser = new CommentParser (language.LineComment, language.BeginComment, language.EndComment, language.BeginRegion, language.EndRegion);
        }
コード例 #4
0
        public Document(TextDocument document, Language language, string[] lines, ProjectItem projectItem, IEnumerable <string> keywords = null)
        {
            _document = document;

            _lineEndingInDocument = NewLineManager.DetectMostFrequentLineEnd(GetText());


            string inputText = CreateInputText(lines);

            _header   = new DocumentHeader(document, inputText, new DocumentHeaderProperties(projectItem));
            _keywords = keywords;

            _language = language;

            _commentParser = new CommentParser(language.LineComment, language.BeginComment, language.EndComment, language.BeginRegion, language.EndRegion);
        }
コード例 #5
0
 public static bool Validate(string header, CommentParser commentParser)
 {
     try
       {
     var result = commentParser.Parse (header);
     return result == header;
       }
       catch (ParseException)
       {
     return false;
       }
 }
コード例 #6
0
 private void TestError(string[] text)
 {
     string textString = string.Join (Environment.NewLine, text);
       var parser = new CommentParser ("//", "/*", "*/", "#region", "#endregion");
       Assert.Throws<ParseException>(() => parser.Parse (textString));
 }
コード例 #7
0
    public void TestEndRegionWithSpace()
    {
      var header = new[]
      {
        "#Region ",
        "//This is a comment.",
        "#End Region"
      };

      string headerString = string.Join (Environment.NewLine, header);
      
      headerString += Environment.NewLine;

      var parser = new CommentParser ("//", "/*", "*/", "#Region", "#End Region");
      Assert.AreEqual (headerString, parser.Parse (headerString));
      
    }