Sha256: 3827732f45ae35692dbabadc27d79d382590e1bcfdfc2cf0c4a60f00d0e714a9

Contents?: true

Size: 683 Bytes

Versions: 2

Compression:

Stored size: 683 Bytes

Contents

module Boolean; end
TrueClass.send(:include, Boolean)
FalseClass.send(:include, Boolean)
Any = BasicObject

class Module
  private

  def __rubype__
    prepend (@__rubype__ = Module.new) unless @__rubype__
    @__rubype__
  end

  def typesig(meth, type_info_hash)
    ::Rubype.define_typed_method(self, meth, type_info_hash, __rubype__)
    self
  end
end

class Method
  def type_info
    Rubype.typed_methods[owner][name].info
  end
  typesig :type_info, [] => Hash

  def arg_types
    Rubype.typed_methods[owner][name].arg_types
  end
  typesig :arg_types, [] => Array

  def return_type
    Rubype.typed_methods[owner][name].rtn_type
  end
  typesig :arg_types, [] => Any
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
rubype-0.3.1 lib/rubype/core_ext.rb
rubype-0.3.0 lib/rubype/core_ext.rb