- E05 - Ruby 1.8.4 ri class documentation


#1

I’ve seen that ruby 1.8.4 was released.

I’ve followed the instructions:

http://www.garbagecollect.jp/ruby/mswin32/en/documents/install.html

but failed to get it running.

"
C:>ri class
C:\ruby\bin\ruby: no such file to load – ubygems (LoadError)
"

can someone please post the output of “ri class”, thus I can verify if
something has changed?

Thank you in advance.

[as a sidenote]

Any suggestion for recreating the exact class-definition?

http://lazaridis.com/case/lang/ruby/base.html#sayYourClassDefinition

Any suggestion for recreating the exact class-definitions, including
source-code (recreating the executable ruby-code)?

http://lazaridis.com/case/lang/ruby/base.html#sayYourClassCode


#2

Ilias L. wrote:

can someone please post the output of “ri class”, thus I can verify if
something has changed?

----------------------------------------------------------- Object#class
obj.class => class

  Returns the class of _obj_, now preferred over +Object#type+, as 

an
object’s type in Ruby is only loosely tied to that object’s class.
This method must always be called with an explicit receiver, as
+class+ is also a reserved word in Ruby.

     1.class      #=> Fixnum
     self.class   #=> Object

Cheers,
Antonio


#3

Antonio C. wrote:

Ilias L. wrote:

can someone please post the output of “ri class”, thus I can verify if
something has changed?

----------------------------------------------------------- Object#class
obj.class => class

[…]

Thanks - and my apologies!

This seems to be case sensitive.

ri Class (with upper case “C”) should bring up another documentation.

may one can post this?


#4

Ilias L. wrote:

 obj.class    => class

may one can post this?

.

Hello
This is my output to ri Class

-------------------------------------------------- Class: Class < Module
Classes in Ruby are first-class objects—each is an instance of
class +Class+.

  When a new class is created (typically using +class Name ... 

end+),
an object of type +Class+ is created and assigned to a global
constant (+Name+ in this case). When +Name.new+ is called to
create
a new object, the +new+ method in +Class+ is run by default. This
can be demonstrated by overriding +new+ in +Class+:

     class Class
        alias oldNew  new
        def new(*args)
          print "Creating a new ", self.name, "\n"
          oldNew(*args)
        end
      end

      class Name
      end

      n = Name.new

  _produces:_

     Creating a new Name

  Classes, modules, and objects are interrelated. In the diagram 

that
follows, the vertical arrows represent inheritance, and the
parentheses meta-classes. All metaclasses are instances of the
class `Class’.

                            +------------------+
                            |                  |
              Object---->(Object)              |
               ^  ^        ^  ^                |
               |  |        |  |                |
               |  |  +-----+  +---------+      |
               |  |  |                  |      |
               |  +-----------+         |      |
               |     |        |         |      |
        +------+     |     Module--->(Module)  |
        |            |        ^         ^      |
   OtherClass-->(OtherClass)  |         |      |
                              |         |      |
                            Class---->(Class)  |
                              ^                |
                              |                |
                              +----------------+

Class methods:

  new

Instance methods:

  allocate, inherited, new, superclass

Regards
Gunnar


#5

Gunnar wrote:

Ilias L. wrote:
[…]

Hello
This is my output to ri Class
[…]

Thanks for posting the output.

 _produces:_

    Creating a new Name

 Classes, modules, and objects are interrelated. In the diagram that
 follows, the vertical arrows represent inheritance, and the

[…]

“vertical” has been added before “arrows”.

Thanks for the correction.

quote from an previous thread

"
so, the minimum correction would be:

additional text:
“the vertical arrows represent XXXX”
"

[EVALUATION] - E03c - The Ruby Object Model (Revised Documentation)
http://groups.google.com/group/comp.lang.ruby/msg/2368181975e56f2e

TAG.ruby.evolution.effort


#6

Ilias,

On 12/25/05, Ilias L. removed_email_address@domain.invalid wrote:

C:>ri class
C:\ruby\bin\ruby: no such file to load – ubygems (LoadError)
"

The reason you are getting that error is you have ‘rubygems’ in your
RUBYOPT environment variable but you have not installed rubygems yet.
You probably had everything setup correctly for 1.8.3 (w/ gems
installed with enviroment variable)… you just need to reinstall
rubygems to get rid of that error. That or clear the RUBYOPT
environment variable.

-dayne


#7

Dayne wrote:

The reason you are getting that error is you have ‘rubygems’ in your
RUBYOPT environment variable but you have not installed rubygems yet.
You probably had everything setup correctly for 1.8.3 (w/ gems
installed with enviroment variable)… you just need to reinstall
rubygems to get rid of that error. That or clear the RUBYOPT
environment variable.

-dayne

confirmed.

thanks for the info.