Skip to content

Instantly share code, notes, and snippets.

View elia's full-sized avatar
🦆
quacking!

Elia Schito elia

🦆
quacking!
View GitHub Profile
### Keybase proof
I hereby claim:
* I am elia on github.
* I am elia (https://keybase.io/elia) on keybase.
* I have a public key whose fingerprint is B352 58F5 9ED3 3447 FEF8 785E D1AA 5EE1 E75F 4C5E
To claim this, I am signing this object:
(function(undefined) {
// The Opal object that is exposed globally
var Opal = this.Opal = {};
// The actual class for BasicObject
var RubyBasicObject;
// The actual Object class
var RubyObject;
@elia
elia / opal-browser.js
Created July 19, 2014 10:53
Opal Browser v0.2.0.beta1 (Opal v0.6.2) — `opal-build -ropal/browser -oopal-browser.js browser`
/* Generated by Opal 0.6.2 */
(function($opal) {
var self = $opal.top, $scope = $opal, nil = $opal.nil, $breaker = $opal.breaker, $slice = $opal.slice, $module = $opal.module, $range = $opal.range, $hash2 = $opal.hash2, $klass = $opal.klass, $gvars = $opal.gvars;
$opal.add_stubs(['$try_convert', '$native?', '$respond_to?', '$to_n', '$raise', '$inspect', '$Native', '$end_with?', '$define_method', '$[]', '$convert', '$call', '$to_proc', '$new', '$each', '$native_reader', '$native_writer', '$extend', '$to_a', '$to_ary', '$include', '$method_missing', '$bind', '$instance_method', '$[]=', '$slice', '$-', '$length', '$enum_for', '$===', '$>=', '$<<', '$==', '$instance_variable_set', '$members', '$each_with_index', '$each_pair', '$name']);
(function($base) {
var self = $module($base, 'Native');
var def = self._proto, $scope = self._scope, TMP_1;
@elia
elia / view.js.rb
Created September 8, 2014 12:22
The View class
require 'opal-jquery'
class View
def self.selector= selector
@selector = selector
end
def self.selector
@selector
end
------> Updating align...
Already up-to-date.
------> Updating avian-missing...
Already up-to-date.
------> Updating base16-themes...
Already up-to-date.
------> Updating bundler...
require 'native'
module JSONParse
def self.parse(string)
%x{
var parsed;
try {
parsed = json_parse(string)
} catch(error) {
#{raise error.inspect}
require 'opal'
Opal::BuilderProcessors.class_eval do
class SprocketsProcessor < self::JsProcessor
def self.match?(*)
true
end
def source
compiled.to_s + mark_as_required(@filename)
@elia
elia / dom2react.js.rb
Last active August 29, 2015 14:17
Building a React.js component out of a piece of DOM
require 'react'
React = Native(`React`)
class DOM2React
def initialize(element)
@element = element
end
def virtual_dom
@virtual_dom ||= parse_element(`#@element[0]`)
<link data-turbolinks-track="true" href="/assets_dev/inner/application-6bacfa8634a16dbfc81da3e85a470059.css?body=1" media="all" rel="stylesheet" />
<script data-turbolinks-track="true" src="/assets_dev/jquery-5c8e9a5f2706a5ae36c57c9b8b1693b8.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets_dev/jquery_ujs-8163409ac89d9587bb33a62f6f74d283.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets_dev/jquery.validate/jquery.validate.min-2d81074928b8de12627110241d1e7b82.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets_dev/inner/jquery.custom-scrollbar-4b3108a76806c963afb395dddf95ebc7.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets_dev/turbolinks-f87b3583ca50adb0488b031297f5580d.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets_dev/inner/velocity-a200cc46d3ab9e883fa5ffee35d3a887.js?body=1"></script>
<script data-turbolinks-track="true" src="/assets_dev/corelib/runtime-eb08e04f93014d6f
@elia
elia / ruby-modules.coffee
Created July 15, 2015 22:19
Included and prepended modules in JavaScript with __proto__
p = console?.log
# Prepend module "mod" to the class "cla"
prepend_module = (cla, mod)->
icla = dup_methods(mod.prototype)
icla.__proto__ = cla.pre.__proto__
cla.pre.__proto__ = icla
cla
# Include module "mod" into the class "cla"