Foreword. Preface. 1. Roadmap. I. FACETS OF RUBY.
2. Ruby New. Ruby Is an Object-Oriented Language.
Some Basic Ruby.
Arrays and Hashes.
Control Structures.
Regular Expressions.
Blocks and Iterators.
Reading and `Riting.
Onward and Upward.
3. Classes, Objects, and Variables. Inheritance and Messages.
Objects and Attributes.
Class Variables and Class Methods.
Access Control.
Variables.
4. Containers, Blocks, and Iterators. Containers.
Blocks and Iterators.
5. Standard Types. Numbers.
Strings.
Ranges.
Regular Expressions.
6. More about Methods. Defining a Method.
Calling a Method.
7. Expressions. Operator Expressions.
Miscellaneous Expressions.
Assignment.
Conditional Execution.
Case Expressions.
Loops.
Variable Scope and Loops.
8. Exceptions, Catch, and Throw. The Exception Class.
Handling Exceptions.
Raising Exceptions.
Catch and Throw.
9. Modules. Namespaces.
Mixins.
Iterators and the Enumerable Module.
Including Other Files.
10. Basic Input and Output. What Is an IO Object?
Opening and Closing Files.
Reading and Writing Files.
Talking to Networks.
11. Threads and Processes. Multithreading.
Controlling the Thread Scheduler.
Mutual Exclusion.
Running Multiple Processes.
12. When Trouble Strikes. Ruby Debugger.
Interactive Ruby.
But It Doesn't Work!
But It's Too Slow!
II. RUBY IN ITS SETTING.
13. Ruby and Its World. Command-Line Arguments.
Program Termination.
Environment Variables.
Where Ruby Finds Its Modules.
Build Environment.
14. Ruby and the Web. Writing CGI Scripts.
Embedding Ruby in HTML.
Improving Performance.
15. Ruby Tk. Simple Tk Application.
Widgets.
Binding Events.
Canvas.
Scrolling.
Translating from Perl/Tk Documentation.
16. Ruby and Microsoft Windows. Ruby Ports.
Running Ruby Under Windows.
Win32API.
Windows Automation.
17. Extending Ruby. Ruby Objects in C.
Writing Ruby in C.
Sharing Data Between Ruby and C.
Memory Allocation.
Creating an Extension.
Embedding a Ruby Interpreter.
Bridging Ruby to Other Languages.
Ruby C Language API.
III. RUBY CRYSTALLIZED.
18. The Ruby Language. Source Layout.
The Basic Types.
Names.
Variables and Constants.
Predefined Variables.
Expressions.
Boolean Expressions.
If and Unless Expressions.
Case Expressions.
Loop Constructs.
Method Definition.
Invoking a Method.
Aliasing.
Class Definition.
Module Definitions.
Access Control.
Blocks, Closures, and Proc Objects.
Exceptions.
Catch and Throw.
19. Classes and Objects. How Classes and Objects Interact.
Class and Module Definitions.
Top-Level Execution Environment.
Inheritance and Visibility.
Freezing Objects.
20. Locking Ruby in the Safe. Safe Levels.
Tainted Objects.
21. Reflection, ObjectSpace, and Distributed Ruby. Looking at Objects.
Looking at Classes.
Calling Methods Dynamically.
System Hooks.
Tracing Your Program's Execution.
Marshaling and Distributed Ruby.
Compile Time? Runtime? Anytime!
IV. RUBY LIBRARY REFERENCE.
22. Built-In Classes. Alphabetical Listing.
Array.
Bignum.
Binding.
Class.
Continuation.
Dir.
Exception.
FalseClass.
File.
File::Stat.
Fixnum.
Float.
Hash.
Integer.
IO.
MatchData.
Method.
Module.
NilClass.
Numeric.
Object.
Proc.
Range.
Regexp.
String.
Struct.
Struct::Tms.
Symbol.
Thread.
ThreadGroup.
Time.
TrueClass.
23. Built-in Modules. Alphabetical Listing.
Comparable.
Enumerable.
Errno.
FileTest.
GC.
Kernel.
Marshal.
Math.
ObjectSpace.
Process.
24. Standard Library. Complex.
Date.
English.
Find.
File.
GetoptLong.
mkmf.
ParseDate.
profile.
PStore.
Tempfile.
Mutex.
ConditionVariable.
timeout.
WeakRef.
25. Object-Oriented Design Libraries. Visitor.
Delegate.
Observer.
Singleton.
26. Network and Web Libraries. Socket-Level Access.
BasicSocket.
IPSocket.
TCPSocket.
SOCKSSocket.
TCPServer.
UDPSocket.
UNIXSocket.
UNIXServer.
Socket.
Higher-Level Access.
Net::FTP.
Net::HTTP.
Net::HTTPResponse.
Net::POP.
Net::APOP.
Net::POPMail.
Net::SMTP.
Net::Telnet.
CGI Development.
CGI.
CGI::Session.
27. Microsoft Windows Support. WIN32OLE.
WIN32OLE_EVENT.
Win32API.
V. APPENDICES.
A: Embedded Documentation. Inline Formatting.
Cross References.
Method Names.
Including Other Files.
Using rdtool.
Mandatory Disclaimer.
B: Interactive Ruby Shell. Command Line.
Initialization File.
Commands.
Restrictions.
rtags, xmp, and the Frame Class.
C: Support. Web Sites.
Download Sites.
Usenet Newsgroup.
Mailing Lists.
Bug Reporting.
D: Bibliography. Index. 0201710897T04062001