2016-08-04 15 views

Antwort

5

können Sie match verwenden, sie umzusetzen:

f n x = do 
    (bs, res) <- match x 
    guard (BS.length bs >= n) 
    return res 

Sie sollten prüfen, ob diese mit (<|>) in akzeptabler Weise in Wechselwirkung treten, bevor es zu starkem Gebrauch setzen.

+0

In 'binary' ist diese Funktion als' isolate' verpackt. Vielleicht ist es dort sinnvoller, da 'binary' die Anzahl der verbrauchten Bytes verfolgt, aber es scheint mir eine gute Ergänzung zur attoparsec-API zu sein (in Form von Tokens, nicht Bytes, also würde Text z. B. keine Bytes zählen). –