Learn more  » Push, build, and install  RubyGems npm packages Python packages Maven artifacts PHP packages Go Modules Bower components Debian packages RPM packages NuGet packages

vistahigherlearning / logstash   deb

Repository URL to install this package:

/ opt / logstash / vendor / bundle / jruby / 1.9 / gems / mail-2.5.3 / lib / mail / parsers / content_disposition.treetop

module Mail
  grammar ContentDisposition

    include RFC2822
    include RFC2045
    
    rule content_disposition
      disposition_type param_hashes:(CFWS ";" parameter CFWS)* {
        def parameters
          param_hashes.elements.map do |param|
            param.parameter.param_hash
          end
        end
      }
    end
    
    rule disposition_type
      [iI] [nN] [lL] [iI] [nN] [eE] / [aA] [tT] [tT] [aA] [cC] [hH] [mM] [eE] [nN] [tT] / extension_token / ''
    end
    
    rule extension_token
      ietf_token / custom_x_token
    end
    
    rule parameter
      CFWS? attr:attribute "=" val:value CFWS? {
        def param_hash
          {attr.text_value => val.text_value}
        end
      }
    end

    rule attribute
      token+
    end

    rule value
      quoted_string {
        def text_value
          quoted_content.text_value
        end
      } / (token / [\x3d])+
    end
    
  end
end