Sha256: 2535bfeab8629acb845f041b232a43705aa42e239e870af00cdc202315b2a8a0

Contents?: true

Size: 707 Bytes

Versions: 4

Compression:

Stored size: 707 Bytes

Contents

%%{

  machine multipart;

  include common "common.rl";

  bchar = alnum | "'" | "(" | ")" | "+" | "_" | ","
        | "-" | "." | "/" | ":" | "=" | "?"
        ;


      final = "--" @ end_parts ;
    padding = final ? LWSP * CRLF;

  # ==== HEADERS ====
  header_name = generic_header_name;
       header = header_name header_sep header_value % end_header_value;
      headers = header * CRLF;

  multipart =
    start:
      any * $ peek_delimiter,

    delimiter:
      any * $ parse_delimiter,

    head:
      padding
      headers
        > start_head
        % end_head
      -> body,

    body:
      any * $ peek_delimiter,

    epilogue: any *;

  main := multipart $! something_went_wrong;

}%%

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
http-0.1.0 parser/multipart.rl
http-0.0.2 parser/multipart.rl
http-0.0.1 parser/multipart.rl
http-0.0.0 parser/multipart.rl