summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-method/README.md
blob: 41130bb8212d8d99e0bc4f6eafb61eb82d5d51df (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
# mruby-method

An implementation of class **Method** and **UnboundMethod** for mruby

```ruby
p Enumerable.instance_method(:find_all).source_location
#=> ["mruby/mruby/mrblib/enum.rb", 148]
```

# Note

You need to enable debug option in your build configuration to use
`source_location` method in this gem, for example:

```ruby
MRuby::Build.new do |conf|
  conf.enable_debug
end
```

# Supported Methods

## Kernel

* `Kernel#method`
* `Kernel#singleton_method`

## Module

* `Module#instance_method`

## Method class

* `Method#name`
* `Method#call`
* `Method#super_method`
* `Method#arity`
* `Method#unbind`
* `Method#[]`
* `Method#owner`
* `Method#receiver`
* `Method#parameters`
* `Method#source_location`
* `Method#to_proc`

## UnboundMethod class

* `UnboundMethod#name`
* `UnboundMethod#bind`
* `UnboundMethod#super_method`
* `UnboundMethod#arity`
* `UnboundMethod#owner`
* `UnboundMethod#parameters`
* `UnboundMethod#source_location`

# See also

* <https://ruby-doc.org/core-2.3.3/Method.html>
* <https://ruby-doc.org/core-2.3.3/UnboundMethod.html>