Exemplo n.º 1
0
        public void AddPattern(bool caseSensitive, bool needSeparators, IPatternMatcher matcher, object[] tags)
        {
            var patternMatcherReference = new PatternMatchReference(matcher)
                                          {NextSibling = FirstExpression, Tags = tags, NeedSeparators = needSeparators};

            FirstExpression = patternMatcherReference;
        }
Exemplo n.º 2
0
        public void AddPattern(string prefix, bool caseSensitive, bool needSeparators, IPatternMatcher matcher,
            object[] tags)
        {
            if (string.IsNullOrEmpty(prefix))
                throw new ArgumentNullException("prefix");

            TokenTreeNode node = AddTokenInternal(prefix, caseSensitive);

            var patternMatcherReference = new PatternMatchReference(matcher)
                                          {NextSibling = FirstExpression, Tags = tags, NeedSeparators = needSeparators};

            node.FirstExpression = patternMatcherReference;
        }
Exemplo n.º 3
0
        private void AddPatternWithoutPrefix(IPatternMatcher matcher, bool caseSensitive, bool needSeparators,
            object[] tags)
        {
            if (matcher.DefaultPrefixes != null)
            {
                foreach (string defaultPrefix in matcher.DefaultPrefixes)
                {
                    AddPattern(defaultPrefix, matcher, caseSensitive, needSeparators, tags);
                }
            }
            else
            {
                var patternMatcherReference = new PatternMatchReference(matcher)
                                              {
                                                  Tags = tags,
                                                  NextSibling = root.FirstExpression,
                                                  NeedSeparators = needSeparators
                                              };

                root.FirstExpression = patternMatcherReference;
            }
        }