Dưới đây là một đống snippets để nhét vào IRB config để scripting cho tiện, hoặc dùng cho mục đích cá nhân. Đừng nhét trực tiếp đống này vào bất cứ codebase nào.
Set XOR
class Array
# Returns the union of `array` and Array `other` minus elements in both.
def ^(other)
(self | other) - (self & other)
end
end
Random
class Random
# Return a random boolean value.
def self.bool
[true, false].sample
end
# Returns a random string containing `size` characters from `characters`.
def self.string(size, characters = [*'a'..'z', *'A'..'Z', *'0'..'9'])
Array.new(size) { characters.sample }.join
end
# Return a random boolean value.
def bool
self.rand(2).zero?
end
# Returns a random string containing `size` characters from `characters`.
def string(size, characters = [*'a'..'z', *'A'..'Z', *'0'..'9'])
Array.new(size) { characters[self.rand(characters.size)] }.join
end
end
Nếu bạn muốn tạo string ngẫu nhiên một cách bảo mật, hãy dùng SecureRandom
.
Clear
# Clear the terminal.
def clear
print "\033c"
end
Null stream
$null = File.open(File::NULL, 'w')
<3