Skip to content

Instantly share code, notes, and snippets.

View Raynos's full-sized avatar

Jake Verbaten Raynos

View GitHub Profile
@Raynos
Raynos / weak-map.js
Last active September 18, 2019 07:49 — forked from Gozala/weak-map.js
Harmony WeakMap shim for ES5
// Original - @Gozola. This is a reimplemented version (with a few bug fixes).
window.WeakMap = window.WeakMap || (function () {
var privates = Name()
return {
get: function (key, fallback) {
var store = privates(key)
return store.hasOwnProperty("value") ?
store.value : fallback
},
@Raynos
Raynos / Cin.ui.Button.js
Created December 11, 2011 16:28
Cindela UI drafting, brainstorming
var EventPublisher = require('Cin.event.EventPublisher');
Base = require('Cin.ui.Base'),
extend = Object.extend;
let Button = Base <| extend(EventPublisher, {
enable() {
// ...
this.emit('enabled');
}
};
@Raynos
Raynos / Cin.ui.Button.js
Created December 11, 2011 16:24
Cindela UI drafting, brainstorming
// Require the Cin app framework.
var EventPublisher = require('event::EventPublisher'),
Base = require('ui::Base');
var Button = Base.make(EventPublisher, {
enable: function _enable() {
// ...
this.emit('enabled');
}
});
head
meta(charset="utf-8")
meta(http-equiv="X-UA-Compatible", content="IE=edge,chrome=1")
title= title
link(rel='stylesheet', href='/public/js/libs/nodeunit/nodeunit.css')
script(src="/public/js/libs/nodeunit/nodeunit.js")
script(data-main="/public/js/app-test", src="/public/js/libs/require/require.js")
<!-- nodeunit HTML -->
define([/* dependencies */], function(dep){
return {
"test my module": function (test) {
// run test
}
};
});
@Raynos
Raynos / Name.js
Created November 7, 2011 12:54 — forked from Gozala/weak-map.js
Namespacing shim for ES5
if (typeof(Name) === 'undefined') {
(function(global) {
"use strict";
function defineNamespace(object, namespace) {
var privates = Object.create(object),
base = object.valueOf;
Object.defineProperty(object, 'valueOf', {
value: function valueOf(value) {
@Raynos
Raynos / Better.js
Created September 7, 2011 14:20 — forked from robotlolita/gist:1174881
Constructors
var Mage = {
cast: function _cast() {
console.log(this.name + ' cast ' + magic);
}
};
var BlackMage = {
fira: function _fira() { this.cast('fira') },
watera: function _watera() { this.cast('watera') }
blizarra: function _blizarra(){ this.cast('blizarra') }
@Raynos
Raynos / server.js
Created August 24, 2011 22:09 — forked from tommedema/server.js
module.exports = function (mediator) {
mediator.once('boot.ready', f);
};
var f = function() {
//UGH! MAKES EVERY MODULE CODE START WITH 1 INDENTS... solution?
}
//handles audio information of clients, eg. codecs they can play
module.exports = function(availClients, unavailClients, io) {
var util = require('util');
//for each connection
io.sockets.on('connection', handleConnection);
function handleConnection (socket) {
//fired when the client discovered it's codec capabilities
socket.on('codecCapability', function (mp3, mp4, ogg) {
@Raynos
Raynos / object-create-server.js
Created June 2, 2011 23:56 — forked from onteria/object-create-server.js
using Object.create()
var fs = require('fs');
var http = require('http');
var events = require('events');
var MyServer = new function() {
var server = Object.create(new events.EventEmitter);
server.on("response", function(response) {
response.writeHead(200, {'Content-Type': 'text/plain'});
response.end('Hello World\n');