Example #1
0
        public CategorisedCharacterString(string value, int indexInSource, CharacterCategorisationOptions characterCategorisation)
        {
            if (string.IsNullOrEmpty(value))
            {
                throw new ArgumentException("Null/blank value specified");
            }
            if (indexInSource < 0)
            {
                throw new ArgumentOutOfRangeException("indexInSource", "must be zero or greater");
            }

            if ((characterCategorisation != CharacterCategorisationOptions.CloseBrace) &&
                (characterCategorisation != CharacterCategorisationOptions.Comment) &&
                (characterCategorisation != CharacterCategorisationOptions.OpenBrace) &&
                (characterCategorisation != CharacterCategorisationOptions.SemiColon) &&
                (characterCategorisation != CharacterCategorisationOptions.SelectorOrStyleProperty) &&
                (characterCategorisation != CharacterCategorisationOptions.StylePropertyColon) &&
                (characterCategorisation != CharacterCategorisationOptions.Value) &&
                (characterCategorisation != CharacterCategorisationOptions.Whitespace))
            {
                throw new ArgumentOutOfRangeException("characterCategorisation");
            }

            Value                   = value;
            IndexInSource           = indexInSource;
            CharacterCategorisation = characterCategorisation;
        }
            public SelectorProcessorResult(CharacterCategorisationOptions characterCategorisation, IProcessSelectorContent nextProcessor)
            {
                if (!Enum.IsDefined(typeof(CharacterCategorisationOptions), characterCategorisation))
                {
                    throw new ArgumentOutOfRangeException("characterCategorisation");
                }
                if (nextProcessor == null)
                {
                    throw new ArgumentNullException("nextProcessor");
                }

                CharacterCategorisation = characterCategorisation;
                NextProcessor           = nextProcessor;
            }
Example #3
0
            public CharacterCategorisationBehaviourOverride(
                char endOfBehaviourOverrideCharacter,
                CharacterCategorisationOptions characterCategorisation,
                IProcessCharacters characterProcessorToReturnTo)
            {
                if (!Enum.IsDefined(typeof(CharacterCategorisationOptions), characterCategorisation))
                {
                    throw new ArgumentOutOfRangeException("characterCategorisation");
                }
                if (characterProcessorToReturnTo == null)
                {
                    throw new ArgumentNullException("characterProcessorToReturnTo");
                }

                EndOfBehaviourOverrideCharacter = endOfBehaviourOverrideCharacter;
                CharacterCategorisation         = characterCategorisation;
                CharacterProcessorToReturnTo    = characterProcessorToReturnTo;
            }
        public CharacterProcessorResult(CharacterCategorisationOptions characterCategorisation, IProcessCharacters nextProcessor)
        {
            if ((characterCategorisation != CharacterCategorisationOptions.CloseBrace) &&
                (characterCategorisation != CharacterCategorisationOptions.Comment) &&
                (characterCategorisation != CharacterCategorisationOptions.OpenBrace) &&
                (characterCategorisation != CharacterCategorisationOptions.SemiColon) &&
                (characterCategorisation != CharacterCategorisationOptions.SelectorOrStyleProperty) &&
                (characterCategorisation != CharacterCategorisationOptions.StylePropertyColon) &&
                (characterCategorisation != CharacterCategorisationOptions.Value) &&
                (characterCategorisation != CharacterCategorisationOptions.Whitespace))
            {
                throw new ArgumentOutOfRangeException("characterCategorisation");
            }
            if (nextProcessor == null)
            {
                throw new ArgumentNullException("nextProcessor");
            }

            CharacterCategorisation = characterCategorisation;
            NextProcessor           = nextProcessor;
        }
Example #5
0
        public SkipCharactersSegment(
            CharacterCategorisationOptions characterCategorisation,
            int numberOfCharactersToSkip,
            IProcessCharacters characterProcessorToReturnTo)
        {
            if (!Enum.IsDefined(typeof(CharacterCategorisationOptions), characterCategorisation))
            {
                throw new ArgumentOutOfRangeException("characterCategorisation");
            }
            if (numberOfCharactersToSkip <= 0)
            {
                throw new ArgumentOutOfRangeException("numberOfCharactersToSkip", "must be greater than zero");
            }
            if (characterProcessorToReturnTo == null)
            {
                throw new ArgumentNullException("characterProcessorToReturnTo");
            }

            CharacterCategorisation       = characterCategorisation;
            NumberOfCharactersToSkip      = numberOfCharactersToSkip;
            _characterProcessorToReturnTo = characterProcessorToReturnTo;
        }
Example #6
0
        public QuotedSegment(
            char quoteCharacter,
            CharacterCategorisationOptions characterCategorisation,
            IProcessCharacters characterProcessorToReturnTo,
            IGenerateCharacterProcessors processorFactory)
        {
            if (characterProcessorToReturnTo == null)
            {
                throw new ArgumentNullException("characterProcessorToReturnTo");
            }
            if (!Enum.IsDefined(typeof(CharacterCategorisationOptions), characterCategorisation))
            {
                throw new ArgumentOutOfRangeException("characterCategorisation");
            }
            if (processorFactory == null)
            {
                throw new ArgumentNullException("processorFactory");
            }

            _quoteCharacter               = quoteCharacter;
            _characterCategorisation      = characterCategorisation;
            _characterProcessorToReturnTo = characterProcessorToReturnTo;
            _processorFactory             = processorFactory;
        }