func LessThan(x interface{}) Matcher {
	v := reflect.ValueOf(x)
	kind := v.Kind()
	switch {
	case isInteger(v):
	case isFloat(v):
	case kind == reflect.String:
	default:
		panic(fmt.Sprintf("LessThan: unexpected kind %v", kind))
	}
	return &lessThanMatcher{v}
}
LessThan returns a matcher that matches integer, floating point, or strings
values v such that v < x. Comparison is not defined between numeric and
string types, but is defined between all integer and floating point types.

x must itself be an integer, floating point, or string type; otherwise,
LessThan will panic.
package oglematchers
import (
	"errors"
	"fmt"
	"math"
	"reflect"
)