blob: e80b4ebe05b555b55168ae11509c382570881698 (
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
|
require 'yaml'
module RI
Alias = Struct.new(:old_name, :new_name)
AliasName = Struct.new(:name)
Attribute = Struct.new(:name, :rw, :comment)
Constant = Struct.new(:name, :value, :comment)
IncludedModule = Struct.new(:name)
class MethodSummary
attr_accessor :name
def initialize(name="")
@name = name
end
def <=>(other)
self.name <=> other.name
end
end
class Description
attr_accessor :name
attr_accessor :full_name
attr_accessor :comment
def serialize
self.to_yaml
end
def Description.deserialize(from)
YAML.load(from)
end
end
class ClassDescription < Description
attr_accessor :method_list
attr_accessor :attributes
attr_accessor :constants
attr_accessor :superclass
attr_accessor :includes
end
class MethodDescription < Description
attr_accessor :is_class_method
attr_accessor :visibility
attr_accessor :block_params
attr_accessor :is_singleton
attr_accessor :aliases
attr_accessor :is_alias_for
attr_accessor :params
end
end
|