Exemple #1
0
        public void ContainsTest()
        {
            var opt1 = new Optional <int>(10);

            Assert.IsTrue(opt1.Contains(10));
            Assert.IsFalse(opt1.Contains(7));

            var opt2 = new Optional <int>();

            Assert.IsFalse(opt2.Contains(5));
        }
Exemple #2
0
        public void Optional_ContainsString_True()
        {
            Optional <string> optional = "text";

            Assert.True(optional.HasValue);
            Assert.True(optional.Contains("text"));
        }
Exemple #3
0
        public void Optional_WithNull_ContainsNull_False()
        {
            Optional <string> optionalWithoutValue = null;

            Assert.False(optionalWithoutValue.HasValue);
            Assert.False(optionalWithoutValue.Contains(null));
        }
Exemple #4
0
        public void Optional_ContainsDifferentString_False()
        {
            Optional <string> optional = "text";

            Assert.True(optional.HasValue);
            Assert.False(optional.Contains("different_text"));
        }
        protected Token TokenOf(Acceptor acceptor)
        {
            var optional = new Acceptor[] { Commenting, Parameters, Self };
            var found    = Lexicon.FirstOrDefault(pair => pair.Item2.ValueOf == acceptor);
            var token    = found != null ? found.Item2 : null;

            if ((token == null) && !Optional.Contains(acceptor))
            {
                throw Language.Error("missing required token definition: {0}", acceptor.Method.Name);
            }
            return(token);
        }