ErrInvalid indicates a label is invalid according to the Bidi Rule.
var ErrInvalid = errors.New("bidirule: failed Bidi Rule")
func Direction(b []byte) bidi.Direction
Direction reports the direction of the given label as defined by RFC 5893. The Bidi Rule does not have to be applied to labels of the category LeftToRight.
func DirectionString(s string) bidi.Direction
DirectionString reports the direction of the given label as defined by RFC 5893. The Bidi Rule does not have to be applied to labels of the category LeftToRight.
func Valid(b []byte) bool
Valid reports whether b conforms to the BiDi rule.
func ValidString(s string) bool
ValidString reports whether s conforms to the BiDi rule.
Transformer implements transform.Transform.
type Transformer struct {
// contains filtered or unexported fields
}
func New() *Transformer
New returns a Transformer that verifies that input adheres to the Bidi Rule.
func (t *Transformer) Reset()
Reset implements transform.Transformer.
func (t *Transformer) Span(src []byte, atEOF bool) (n int, err error)
Span returns the first n bytes of src that conform to the Bidi rule.
func (t *Transformer) Transform(dst, src []byte, atEOF bool) (nDst, nSrc int, err error)
Transform implements transform.Transformer. This Transformer has state and needs to be reset between uses.