public void CanHandle_Always(string str) { var reader = new StringReader(str); var charHandler = new CharHandler(); charHandler.CanHandle(reader).Should().BeTrue(); }
public void ReadAllCharByChar(string str) { var reader = new StringReader(str); var charHandler = new CharHandler(); var symbols = Enumerable.Range(0, str.Length).Select(i => charHandler.HandleSubstring(reader)); string.Join("", symbols).Should().Be(str); }
private void RegisterBuiltinHandlers() { IntHandler intHandler = new IntHandler(); RegisterBuiltinHandler(Handlers4.IntId, intHandler); RegisterHandlerVersion(intHandler, 0, new IntHandler0()); LongHandler longHandler = new LongHandler(); RegisterBuiltinHandler(Handlers4.LongId, longHandler); RegisterHandlerVersion(longHandler, 0, new LongHandler0()); FloatHandler floatHandler = new FloatHandler(); RegisterBuiltinHandler(Handlers4.FloatId, floatHandler); RegisterHandlerVersion(floatHandler, 0, new FloatHandler0()); BooleanHandler booleanHandler = new BooleanHandler(); RegisterBuiltinHandler(Handlers4.BooleanId, booleanHandler); // TODO: Are we missing a boolean handler version? DoubleHandler doubleHandler = new DoubleHandler(); RegisterBuiltinHandler(Handlers4.DoubleId, doubleHandler); RegisterHandlerVersion(doubleHandler, 0, new DoubleHandler0()); ByteHandler byteHandler = new ByteHandler(); RegisterBuiltinHandler(Handlers4.ByteId, byteHandler); // TODO: Are we missing a byte handler version? CharHandler charHandler = new CharHandler(); RegisterBuiltinHandler(Handlers4.CharId, charHandler); // TODO: Are we missing a char handler version? ShortHandler shortHandler = new ShortHandler(); RegisterBuiltinHandler(Handlers4.ShortId, shortHandler); RegisterHandlerVersion(shortHandler, 0, new ShortHandler0()); _stringHandler = new StringHandler(); RegisterBuiltinHandler(Handlers4.StringId, _stringHandler); RegisterHandlerVersion(_stringHandler, 0, new StringHandler0()); DateHandler dateHandler = new DateHandler(); RegisterBuiltinHandler(Handlers4.DateId, dateHandler); RegisterHandlerVersion(dateHandler, 0, new DateHandler0()); RegisterUntypedHandlers(); RegisterCompositeHandlerVersions(); }
public static INumberHandler Get(Type type) { INumberHandler result; if (!handlers.TryGetValue(type, out result)) { if (type == typeof(int)) { result = new IntHandler(); } else if (type == typeof(float)) { result = new FloatHandler(); } else if (type == typeof(long)) { result = new LongHandler(); } else if (type == typeof(double)) { result = new DoubleHandler(); } else if (type == typeof(byte)) { result = new ByteHandler(); } else if (type == typeof(char)) { result = new CharHandler(); } else if (type == typeof(short)) { result = new ShortHandler(); } else if (type == typeof(uint)) { result = new UIntHandler(); } else if (type == typeof(ulong)) { result = new ULongHandler(); } else if (type == typeof(sbyte)) { result = new SByteHandler(); } else if (type == typeof(ushort)) { result = new UShortHandler(); } else if (type == typeof(decimal)) { result = new DecimalHandler(); } else { result = null; } handlers[type] = result; } return(result); }