o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1337093726.2099829: @value"{I" class:EFI"ProcessedAsset;FI"logical_path;F""ems/lib/batman/src/_batman.jsI" pathname;F"r/private/var/www/html/development/projects/rails/ems/app/assets/javascripts/ems/lib/batman/src/_batman.coffeeI"content_type;FI"application/javascript;FI" mtime;FI"2012-05-14T17:32:22+01:00;FI" length;Fiµ I" digest;F"%2231ec0da105679f7c42901bdc2dc6c2I" source;FI"µ (function() { var _Batman; Batman._Batman = _Batman = (function() { _Batman.name = '_Batman'; function _Batman(object) { this.object = object; } _Batman.prototype.check = function(object) { if (object !== this.object) { object._batman = new Batman._Batman(object); return false; } return true; }; _Batman.prototype.get = function(key) { var reduction, results; results = this.getAll(key); switch (results.length) { case 0: return; case 1: return results[0]; default: reduction = results[0].concat != null ? function(a, b) { return a.concat(b); } : results[0].merge != null ? function(a, b) { return a.merge(b); } : results.every(function(x) { return typeof x === 'object'; }) ? (results.unshift({}), function(a, b) { return Batman.extend(a, b); }) : void 0; if (reduction) { return results.reduceRight(reduction); } else { return results; } } }; _Batman.prototype.getFirst = function(key) { var results; results = this.getAll(key); return results[0]; }; _Batman.prototype.getAll = function(keyOrGetter) { var getter, results, val; if (typeof keyOrGetter === 'function') { getter = keyOrGetter; } else { getter = function(ancestor) { var _ref; return (_ref = ancestor._batman) != null ? _ref[keyOrGetter] : void 0; }; } results = this.ancestors(getter); if (val = getter(this.object)) { results.unshift(val); } return results; }; _Batman.prototype.ancestors = function(getter) { var isClass, parent, proto, results, val, _ref, _ref1; if (getter == null) { getter = function(x) { return x; }; } results = []; isClass = !!this.object.prototype; parent = isClass ? (_ref = this.object.__super__) != null ? _ref.constructor : void 0 : (proto = Object.getPrototypeOf(this.object)) === this.object ? this.object.constructor.__super__ : proto; if (parent != null) { if ((_ref1 = parent._batman) != null) { _ref1.check(parent); } val = getter(parent); if (val != null) { results.push(val); } if (parent._batman != null) { results = results.concat(parent._batman.ancestors(getter)); } } return results; }; _Batman.prototype.set = function(key, value) { return this[key] = value; }; return _Batman; })(); }).call(this); ;TI"dependency_digest;F"%f3597537a7747834b1eacfafc6393b54I"required_paths;F["r/private/var/www/html/development/projects/rails/ems/app/assets/javascripts/ems/lib/batman/src/_batman.coffeeI"dependency_paths;F[{I" path;F"r/private/var/www/html/development/projects/rails/ems/app/assets/javascripts/ems/lib/batman/src/_batman.coffeeI" mtime;FI"2012-05-14T17:32:22+01:00;FI" digest;F"%f3a32a2180751ab758c74aa211058348I" _version;F"%9f3b95dd7ea3030dc35985c0a8020862