Skip to content

Instantly share code, notes, and snippets.

diff --git a/lib/yard/generators/helpers/markup_helper.rb b/lib/yard/generators/helpers/markup_helper.rb
index 7cb483a..a5d0d33 100644
--- a/lib/yard/generators/helpers/markup_helper.rb
+++ b/lib/yard/generators/helpers/markup_helper.rb
@@ -1,12 +1,3 @@
-if RUBY19
- require 'rdoc/markup'
- require 'rdoc/markup/to_html'
-else
- require 'rdoc/markup/simple_markup'
// Benchmark with Clang
void benchmark(char *name, size_t times, void (^block)(void)) {
size_t i;
clock_t t1, t2;
t1 = clock();
for (i = 0; i < times; i++) block();
t2 = clock();
float diff = ((float)t2 - (float)t1) / (float)CLOCKS_PER_SEC;
module MyModule
class << self
def test
real_method
end
private
def real_method
"hi"
@lsegal
lsegal / mysql_utf8.rb
Created November 7, 2009 01:42
Get MySQL to use UTF-8 in Ruby1.9
require 'mysql'
class Mysql::Result
def encode(value, encoding = "utf-8")
String === value ? value.force_encoding(encoding) : value
end
def each_utf8(&block)
each_orig do |row|
yield row.map {|col| encode(col) }
@lsegal
lsegal / aliases.rb
Created November 25, 2009 23:11
Don't use aliases, they bypass classical inheritance rules you'd expect when you override methods
class A
def read(key) raise NotImplementedError end
alias [] read
end
class B < A
def read(key) puts key end
end
B.new[:x] # NotImplementedError
module ODB
def self.new(store = nil)
Database.new(store || HashStore.new)
end
class Database
attr_accessor :store
class << self
attr_accessor :current
rubinius (master)$ ./configure
Using LLVM: no
Checking for function 'backtrace': found!
rubinius (master)$
class Post
include ODB::Persistent
attr_accessor :title, :author
def __serialize_key__; title.to_sym end
end
db = ODB.new
post = nil
db.transaction do
post = Post.new.tap {|p| p.title = "x"; p.author = "Joe" }
require 'benchmark'
require_relative '../lib/odb'
$db = ODB.new
class MyObj
attr_accessor :__serialize_key__
include ODB::Persistent
end
@lsegal
lsegal / yumler.rb
Created December 1, 2009 03:06
Auto generate ER diagrams using yUML
require 'yard'
require 'active_support'
require 'set'
class ModelHandler < YARD::Handlers::Ruby::Base
handles :class
def process
return unless statement[1]
sclass = statement[1].source