コード例 #1
0
            private AnalysisResult(MarkerInsertionTypeOptions markerInsertionType, int markerLineNumberOffset, IAnalyseCharacters nextProcessor)
            {
                if (!Enum.IsDefined(typeof(MarkerInsertionTypeOptions), markerInsertionType))
                {
                    throw new ArgumentOutOfRangeException("markerInsertionType");
                }
                if (markerLineNumberOffset < 0)
                {
                    throw new ArgumentOutOfRangeException("markerLineNumberOffset", "must be zero or greater");
                }
                if (nextProcessor == null)
                {
                    throw new ArgumentNullException("nextProcessor");
                }

                MarkerInsertionType    = markerInsertionType;
                MarkerLineNumberOffset = markerLineNumberOffset;
                NextAnalyser           = nextProcessor;
            }
コード例 #2
0
 public static AnalysisResult NoInsertion(IAnalyseCharacters nextProcessor)
 {
     return(new AnalysisResult(MarkerInsertionTypeOptions.NoInsertion, 0, nextProcessor));
 }
コード例 #3
0
 public static AnalysisResult InsertBeforeCurrentCharacter(int markerLineNumberOffset, IAnalyseCharacters nextProcessor)
 {
     return(new AnalysisResult(MarkerInsertionTypeOptions.InsertBeforeCurrentCharacter, markerLineNumberOffset, nextProcessor));
 }