module Pickle::Session::Parser

add ability to parse model names as fields, using a session

Attributes

session[RW]

Public Class Methods

included(parser_class) click to toggle source
# File lib/pickle/session/parser.rb, line 15
def self.included(parser_class)
  parser_class.send(:prepend,  ParseFieldWithModel)
end

Public Instance Methods

match_field() click to toggle source
# File lib/pickle/session/parser.rb, line 21
def match_field
  "(?:\\w+: (?:#{match_model}|#{match_value}))"
end
parse_hash(hash) click to toggle source
# File lib/pickle/session/parser.rb, line 25
def parse_hash(hash)
  hash.inject({}) do |parsed, (key, val)|
    if session && val.is_a?(String) && val =~ /^#{capture_model}$/
      parsed.merge(key => session.model($1))
    else
      parsed.merge(key => val)
    end
  end
end