Code Genome
C, Java, .NET, Clojure
Hash.class_eval do | |
def transpose | |
reduce({}) do |rmemo, (rk, rv)| | |
rv.reduce(rmemo) do |cmemo, (ck, cv)| | |
cmemo[ck] ||= {} | |
cmemo[ck][rk] = cv | |
cmemo | |
end | |
rmemo | |
end |
SimpleForm::FormBuilder.class_eval do | |
def input_with_bs_cols(attribute_name, options = {}, &block) | |
bs_cols_classes = parse_bs_cols_option(options) | |
if bs_cols_classes | |
wrapper_html_options = (options[:wrapper_html] || {}) | |
.merge_html_attributes(class: bs_cols_classes.join(' ')) | |
options[:wrapper_html] = wrapper_html_options |
Hash.class_eval do | |
def recursive_map_values(&block) | |
reduce({}) do |m, (k, v)| | |
m[k] = v.is_a?(Hash) ? v.recursive_map_values(&block) : block.call(self, k, v) | |
m | |
end | |
end | |
end |
module Bacon | |
class Resource | |
def initialize(name, parent, options = {}) | |
@name = name | |
@parent = parent | |
@options = options | |
@result = options[:result] || [] | |
end |
# app/admin/account.rb for toplevel configuration options | |
ActiveAdmin.register Account do | |
config.batch_actions = false | |
end | |
# app/admin/account/form.rb | |
ActiveAdmin.register Account do | |
form do |f| |
class Hash | |
def as_object | |
HashObject.new self | |
end | |
end | |
#> o = { foo: (->(this) { puts this.bar }), bar: 'hello') }.as_object | |
#> o.foo | |
# => hello |
require 'spork' | |
require 'database_cleaner' | |
ENV["RAILS_ENV"] ||= 'test' | |
def configure_rspec | |
RSpec.configure do |config| | |
config.mock_with :rspec | |
config.use_transactional_fixtures = true |
source 'http://rubygems.org/' | |
gem 'coffee-script' | |
gem 'compass' | |
gem 'guard' | |
gem 'guard-shell' | |
gem 'haml' | |
gem 'rb-inotify' | |
gem 'kramdown' | |
gem 'nokogiri' |
(defmacro << [k-or-ks f] | |
`(fn [state#] | |
(update-in state# | |
~(if (vector? k-or-ks) | |
k-or-ks | |
(vector k-or-ks)) | |
~f))) | |
(defn >>* [state form] | |
(condp = (first form) |