module Origami::Number
def &(val)
def &(val) self.class.new(self.value & val) end
def *(val)
def *(val) self.class.new(self.value * val) end
def **(val)
def **(val) self.class.new(self.value ** val) end
def +(val)
def +(val) self.class.new(self.value + val) end
def -(val)
def -(val) self.class.new(self.value - val) end
def -@
def -@ self.class.new(-self.value) end
def /(val)
def /(val) self.class.new(self.value / val) end
def <<(val)
def <<(val) self.class.new(self.value << val) end
def >>(val)
def >>(val) self.class.new(self.value >> val) end
def ^(val)
def ^(val) self.class.new(self.value ^ val) end
def abs
def abs self.class.new(self.value.abs) end
def |(val)
def |(val) self.class.new(self.value | val) end
def ~
def ~ self.class.new(~self.value) end