summaryrefslogtreecommitdiff
path: root/lib/rdoc/ri/ri_descriptions.rb
diff options
context:
space:
mode:
authordave <dave@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-12-16 05:44:25 +0000
committerdave <dave@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2003-12-16 05:44:25 +0000
commitc5bbcadbe64477433a243be191c41010c7ae10dc (patch)
tree0d09db2cbe31c84eac3c29575e7008c9d7a6d57b /lib/rdoc/ri/ri_descriptions.rb
parentdcd30a1236cdb2e06b6dd1a74a4c0a0c29549be6 (diff)
Initial load of support for ri/rdoc integration
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@5199 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'lib/rdoc/ri/ri_descriptions.rb')
-rw-r--r--lib/rdoc/ri/ri_descriptions.rb58
1 files changed, 58 insertions, 0 deletions
diff --git a/lib/rdoc/ri/ri_descriptions.rb b/lib/rdoc/ri/ri_descriptions.rb
new file mode 100644
index 0000000000..e80b4ebe05
--- /dev/null
+++ b/lib/rdoc/ri/ri_descriptions.rb
@@ -0,0 +1,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