libxml-ruby 2.0.0-x86-mingw32

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (163) hide show
  1. data/HISTORY +516 -0
  2. data/LICENSE +23 -0
  3. data/MANIFEST +165 -0
  4. data/README.rdoc +161 -0
  5. data/Rakefile +82 -0
  6. data/ext/libxml/extconf.rb +122 -0
  7. data/ext/libxml/libxml.c +93 -0
  8. data/ext/libxml/ruby_libxml.h +101 -0
  9. data/ext/libxml/ruby_xml.c +893 -0
  10. data/ext/libxml/ruby_xml.h +10 -0
  11. data/ext/libxml/ruby_xml_attr.c +352 -0
  12. data/ext/libxml/ruby_xml_attr.h +14 -0
  13. data/ext/libxml/ruby_xml_attr_decl.c +171 -0
  14. data/ext/libxml/ruby_xml_attr_decl.h +13 -0
  15. data/ext/libxml/ruby_xml_attributes.c +277 -0
  16. data/ext/libxml/ruby_xml_attributes.h +17 -0
  17. data/ext/libxml/ruby_xml_cbg.c +85 -0
  18. data/ext/libxml/ruby_xml_document.c +958 -0
  19. data/ext/libxml/ruby_xml_document.h +17 -0
  20. data/ext/libxml/ruby_xml_dtd.c +257 -0
  21. data/ext/libxml/ruby_xml_dtd.h +9 -0
  22. data/ext/libxml/ruby_xml_encoding.c +221 -0
  23. data/ext/libxml/ruby_xml_encoding.h +16 -0
  24. data/ext/libxml/ruby_xml_error.c +1004 -0
  25. data/ext/libxml/ruby_xml_error.h +14 -0
  26. data/ext/libxml/ruby_xml_html_parser.c +92 -0
  27. data/ext/libxml/ruby_xml_html_parser.h +12 -0
  28. data/ext/libxml/ruby_xml_html_parser_context.c +308 -0
  29. data/ext/libxml/ruby_xml_html_parser_context.h +12 -0
  30. data/ext/libxml/ruby_xml_html_parser_options.c +40 -0
  31. data/ext/libxml/ruby_xml_html_parser_options.h +12 -0
  32. data/ext/libxml/ruby_xml_input_cbg.c +191 -0
  33. data/ext/libxml/ruby_xml_input_cbg.h +20 -0
  34. data/ext/libxml/ruby_xml_io.c +30 -0
  35. data/ext/libxml/ruby_xml_io.h +9 -0
  36. data/ext/libxml/ruby_xml_namespace.c +170 -0
  37. data/ext/libxml/ruby_xml_namespace.h +12 -0
  38. data/ext/libxml/ruby_xml_namespaces.c +295 -0
  39. data/ext/libxml/ruby_xml_namespaces.h +11 -0
  40. data/ext/libxml/ruby_xml_node.c +1386 -0
  41. data/ext/libxml/ruby_xml_node.h +13 -0
  42. data/ext/libxml/ruby_xml_parser.c +94 -0
  43. data/ext/libxml/ruby_xml_parser.h +14 -0
  44. data/ext/libxml/ruby_xml_parser_context.c +982 -0
  45. data/ext/libxml/ruby_xml_parser_context.h +12 -0
  46. data/ext/libxml/ruby_xml_parser_options.c +68 -0
  47. data/ext/libxml/ruby_xml_parser_options.h +14 -0
  48. data/ext/libxml/ruby_xml_reader.c +1057 -0
  49. data/ext/libxml/ruby_xml_reader.h +14 -0
  50. data/ext/libxml/ruby_xml_relaxng.c +111 -0
  51. data/ext/libxml/ruby_xml_relaxng.h +10 -0
  52. data/ext/libxml/ruby_xml_sax2_handler.c +334 -0
  53. data/ext/libxml/ruby_xml_sax2_handler.h +12 -0
  54. data/ext/libxml/ruby_xml_sax_parser.c +136 -0
  55. data/ext/libxml/ruby_xml_sax_parser.h +12 -0
  56. data/ext/libxml/ruby_xml_schema.c +159 -0
  57. data/ext/libxml/ruby_xml_schema.h +11 -0
  58. data/ext/libxml/ruby_xml_version.h +9 -0
  59. data/ext/libxml/ruby_xml_xinclude.c +18 -0
  60. data/ext/libxml/ruby_xml_xinclude.h +13 -0
  61. data/ext/libxml/ruby_xml_xpath.c +107 -0
  62. data/ext/libxml/ruby_xml_xpath.h +12 -0
  63. data/ext/libxml/ruby_xml_xpath_context.c +390 -0
  64. data/ext/libxml/ruby_xml_xpath_context.h +11 -0
  65. data/ext/libxml/ruby_xml_xpath_expression.c +83 -0
  66. data/ext/libxml/ruby_xml_xpath_expression.h +12 -0
  67. data/ext/libxml/ruby_xml_xpath_object.c +336 -0
  68. data/ext/libxml/ruby_xml_xpath_object.h +19 -0
  69. data/ext/libxml/ruby_xml_xpointer.c +101 -0
  70. data/ext/libxml/ruby_xml_xpointer.h +13 -0
  71. data/ext/mingw/Rakefile +34 -0
  72. data/ext/mingw/build.rake +41 -0
  73. data/ext/vc/libxml_ruby.sln +26 -0
  74. data/lib/1.8/libxml_ruby.so +0 -0
  75. data/lib/1.9/libxml_ruby.so +0 -0
  76. data/lib/libxml.rb +30 -0
  77. data/lib/libxml/attr.rb +113 -0
  78. data/lib/libxml/attr_decl.rb +80 -0
  79. data/lib/libxml/attributes.rb +14 -0
  80. data/lib/libxml/document.rb +192 -0
  81. data/lib/libxml/error.rb +90 -0
  82. data/lib/libxml/hpricot.rb +78 -0
  83. data/lib/libxml/html_parser.rb +96 -0
  84. data/lib/libxml/namespace.rb +62 -0
  85. data/lib/libxml/namespaces.rb +38 -0
  86. data/lib/libxml/node.rb +399 -0
  87. data/lib/libxml/ns.rb +22 -0
  88. data/lib/libxml/parser.rb +367 -0
  89. data/lib/libxml/properties.rb +23 -0
  90. data/lib/libxml/reader.rb +29 -0
  91. data/lib/libxml/sax_callbacks.rb +180 -0
  92. data/lib/libxml/sax_parser.rb +58 -0
  93. data/lib/libxml/tree.rb +29 -0
  94. data/lib/libxml/xpath_object.rb +16 -0
  95. data/lib/xml.rb +16 -0
  96. data/lib/xml/libxml.rb +10 -0
  97. data/libxml-ruby.gemspec +50 -0
  98. data/script/benchmark/depixelate +634 -0
  99. data/script/benchmark/hamlet.xml +9055 -0
  100. data/script/benchmark/parsecount +170 -0
  101. data/script/benchmark/sock_entries.xml +507 -0
  102. data/script/benchmark/throughput +41 -0
  103. data/script/test +6 -0
  104. data/setup.rb +1585 -0
  105. data/test/etc_doc_to_s.rb +21 -0
  106. data/test/ets_doc_file.rb +17 -0
  107. data/test/ets_doc_to_s.rb +23 -0
  108. data/test/ets_gpx.rb +28 -0
  109. data/test/ets_node_gc.rb +23 -0
  110. data/test/ets_test.xml +2 -0
  111. data/test/ets_tsr.rb +11 -0
  112. data/test/model/atom.xml +13 -0
  113. data/test/model/bands.iso-8859-1.xml +5 -0
  114. data/test/model/bands.utf-8.xml +5 -0
  115. data/test/model/bands.xml +5 -0
  116. data/test/model/books.xml +146 -0
  117. data/test/model/merge_bug_data.xml +58 -0
  118. data/test/model/ruby-lang.html +238 -0
  119. data/test/model/rubynet.xml +79 -0
  120. data/test/model/rubynet_project +1 -0
  121. data/test/model/shiporder.rnc +28 -0
  122. data/test/model/shiporder.rng +86 -0
  123. data/test/model/shiporder.xml +23 -0
  124. data/test/model/shiporder.xsd +31 -0
  125. data/test/model/soap.xml +27 -0
  126. data/test/model/xinclude.xml +5 -0
  127. data/test/rb-magic-comment.rb +33 -0
  128. data/test/tc_attr.rb +181 -0
  129. data/test/tc_attr_decl.rb +133 -0
  130. data/test/tc_attributes.rb +135 -0
  131. data/test/tc_deprecated_require.rb +13 -0
  132. data/test/tc_document.rb +119 -0
  133. data/test/tc_document_write.rb +187 -0
  134. data/test/tc_dtd.rb +125 -0
  135. data/test/tc_error.rb +138 -0
  136. data/test/tc_html_parser.rb +140 -0
  137. data/test/tc_namespace.rb +62 -0
  138. data/test/tc_namespaces.rb +177 -0
  139. data/test/tc_node.rb +258 -0
  140. data/test/tc_node_cdata.rb +51 -0
  141. data/test/tc_node_comment.rb +33 -0
  142. data/test/tc_node_copy.rb +42 -0
  143. data/test/tc_node_edit.rb +160 -0
  144. data/test/tc_node_text.rb +71 -0
  145. data/test/tc_node_write.rb +108 -0
  146. data/test/tc_node_xlink.rb +29 -0
  147. data/test/tc_parser.rb +336 -0
  148. data/test/tc_parser_context.rb +189 -0
  149. data/test/tc_properties.rb +39 -0
  150. data/test/tc_reader.rb +298 -0
  151. data/test/tc_relaxng.rb +54 -0
  152. data/test/tc_sax_parser.rb +276 -0
  153. data/test/tc_schema.rb +53 -0
  154. data/test/tc_traversal.rb +222 -0
  155. data/test/tc_xinclude.rb +21 -0
  156. data/test/tc_xml.rb +226 -0
  157. data/test/tc_xpath.rb +195 -0
  158. data/test/tc_xpath_context.rb +80 -0
  159. data/test/tc_xpath_expression.rb +38 -0
  160. data/test/tc_xpointer.rb +74 -0
  161. data/test/test_helper.rb +14 -0
  162. data/test/test_suite.rb +39 -0
  163. metadata +254 -0
@@ -0,0 +1,21 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ 1.times do |count|
6
+
7
+ xml_doc = XML::Document.new()
8
+ xml_doc.encoding = "UTF-8"
9
+ xml_doc.root = XML::Node.new("Request")
10
+
11
+ 1000.times do |index|
12
+ xml_doc.root << node = XML::Node.new("row")
13
+ node["user_id"] = index.to_s
14
+ node << "600445"
15
+ end
16
+
17
+ xml_str = xml_doc.to_s
18
+ print "\r#{count}"
19
+ $stdout.flush
20
+ end
21
+ puts "\n"
@@ -0,0 +1,17 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ # This is related to bug 8337, complaint is on amd64/fbsd
6
+ # unknown if it happens on other amd64/os combos
7
+
8
+ Process.setrlimit(Process::RLIMIT_NOFILE,10005)
9
+
10
+ (1..10000).each{|time|
11
+ XML::Document.file(File.join(File.dirname(__FILE__),'ets_test.xml'))
12
+ if time % 100 == 0
13
+ print "\r#{time}"
14
+ $stdout.flush
15
+ end
16
+ }
17
+ puts "\n"
@@ -0,0 +1,23 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ 100.times do |count|
6
+
7
+ xml_doc = XML::Document.new()
8
+ xml_doc.encoding = "UTF-8"
9
+ xml_doc.root = XML::Node.new("Request")
10
+
11
+ 1000.times do |index|
12
+
13
+ xml_doc.root << node = XML::Node.new("row")
14
+ node["user_id"] = index.to_s
15
+ node << "600445"
16
+
17
+ end
18
+
19
+ xml_str = xml_doc.to_s
20
+ print "\r#{count}"
21
+ $stdout.flush
22
+ end
23
+ puts "\n"
@@ -0,0 +1,28 @@
1
+ # encoding: UTF-8
2
+
3
+ require 'libxml'
4
+
5
+ 100.times do
6
+ doc = XML::Document.new
7
+ doc.encoding = 'UTF-8'
8
+
9
+ root = XML::Node.new 'gpx'
10
+ root['version'] = '1.0'
11
+ root['creator'] = 'OpenStreetMap.org'
12
+ root['xmlns'] = "http://www.topografix.com/GPX/1/0/"
13
+
14
+ doc.root = root
15
+
16
+ track = XML::Node.new 'trk'
17
+ doc.root << track
18
+
19
+ trkseg = XML::Node.new 'trkseg'
20
+ track << trkseg
21
+
22
+ 1.upto(1000) do |n|
23
+ trkpt = XML::Node.new 'trkpt'
24
+ trkpt['lat'] = n.to_s
25
+ trkpt['lon'] = n.to_s
26
+ trkseg << trkpt
27
+ end
28
+ end
@@ -0,0 +1,23 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ # test of bug 13310, clears MEM2
6
+
7
+ include GC
8
+
9
+ inner = XML::Node.new('inner')
10
+ save = nil
11
+ 1.times do
12
+ outer = XML::Node.new('outer')
13
+ outer.child = inner
14
+ 1.times do
15
+ doc = XML::Document.new
16
+ doc.root = outer
17
+ # Uncomment the following line and it won't crash
18
+ save = doc
19
+ end
20
+ garbage_collect
21
+ end
22
+ garbage_collect
23
+ puts inner
@@ -0,0 +1,2 @@
1
+ <?xml version="1.0"?>
2
+ <test/>
@@ -0,0 +1,11 @@
1
+ # encoding: UTF-8
2
+
3
+ require './test_helper'
4
+
5
+ 10_000.times {|n|
6
+ j=XML::Node.new2(nil,"happy#{n}")
7
+ 10.times {|r|
8
+ j1=XML::Node.new("happy#{r}","farts")
9
+ j.child=j1
10
+ }
11
+ }
@@ -0,0 +1,13 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <?xml-stylesheet type="text/xsl" href="my_stylesheet.xsl"?>
3
+ <feed xmlns="http://www.w3.org/2005/Atom">
4
+ <!-- Not a valid atom entry -->
5
+ <entry>
6
+ <title type="html"><![CDATA[<<strong>>]]></title>
7
+ <content type="xhtml">
8
+ <xhtml:div xmlns:xhtml="http://www.w3.org/1999/xhtml">
9
+ <xhtml:p>hi there</xhtml:p>
10
+ </xhtml:div>
11
+ </content>
12
+ </entry>
13
+ </feed>
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="iso-8859-1"?>
2
+ <bands genre="metal">
3
+ <m�tley_cr�e country="us">M�tley Cr�e is an American heavy metal band formed in Los Angeles, California in 1981.</m�tley_cr�e>
4
+ <iron_maiden country="uk">Iron Maiden is a British heavy metal band formed in 1975.</iron_maiden>
5
+ </bands>
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <bands genre="metal">
3
+ <mötley_crüe country="us">Mötley Crüe is an American heavy metal band formed in Los Angeles, California in 1981.</mötley_crüe>
4
+ <iron_maiden country="uk">Iron Maiden is a British heavy metal band formed in 1975.</iron_maiden>
5
+ </bands>
@@ -0,0 +1,5 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <bands genre="metal">
3
+ <mötley_crüe country="us">An American heavy metal band formed in Los Angeles, California in 1981.</mötley_crüe>
4
+ <iron_maiden country="uk">British heavy metal band formed in 1975.</iron_maiden>
5
+ </bands>
@@ -0,0 +1,146 @@
1
+ <?xml version="1.0"?>
2
+ <!-- Sample xml file from Microsoft.
3
+ See http://msdn.microsoft.com/en-us/library/ms762271(VS.85).aspx -->
4
+ <catalog>
5
+ <book id="bk101">
6
+ <author>Gambardella, Matthew</author>
7
+ <title>XML Developer's Guide</title>
8
+ <genre>Computer</genre>
9
+ <price>44.95</price>
10
+ <publish_date>2000-10-01</publish_date>
11
+ <description>
12
+ An in-depth look at creating applications
13
+ with XML.
14
+ </description>
15
+ </book>
16
+ <book id="bk102">
17
+ <author>Ralls, Kim</author>
18
+ <title>Midnight Rain</title>
19
+ <genre>Fantasy</genre>
20
+ <price>5.95</price>
21
+ <publish_date>2000-12-16</publish_date>
22
+ <description>
23
+ A former architect battles corporate zombies,
24
+ an evil sorceress, and her own childhood to become queen
25
+ of the world.
26
+ </description>
27
+ </book>
28
+ <book id="bk103">
29
+ <author>Corets, Eva</author>
30
+ <title>Maeve Ascendant</title>
31
+ <genre>Fantasy</genre>
32
+ <price>5.95</price>
33
+ <publish_date>2000-11-17</publish_date>
34
+ <description>
35
+ After the collapse of a nanotechnology
36
+ society in England, the young survivors lay the
37
+ foundation for a new society.
38
+ </description>
39
+ </book>
40
+ <book id="bk104">
41
+ <author>Corets, Eva</author>
42
+ <title>Oberon's Legacy</title>
43
+ <genre>Fantasy</genre>
44
+ <price>5.95</price>
45
+ <publish_date>2001-03-10</publish_date>
46
+ <description>
47
+ In post-apocalypse England, the mysterious
48
+ agent known only as Oberon helps to create a new life
49
+ for the inhabitants of London. Sequel to Maeve
50
+ Ascendant.
51
+ </description>
52
+ </book>
53
+ <book id="bk105">
54
+ <author>Corets, Eva</author>
55
+ <title>The Sundered Grail</title>
56
+ <genre>Fantasy</genre>
57
+ <price>5.95</price>
58
+ <publish_date>2001-09-10</publish_date>
59
+ <description>
60
+ The two daughters of Maeve, half-sisters,
61
+ battle one another for control of England. Sequel to
62
+ Oberon's Legacy.
63
+ </description>
64
+ </book>
65
+ <book id="bk106">
66
+ <author>Randall, Cynthia</author>
67
+ <title>Lover Birds</title>
68
+ <genre>Romance</genre>
69
+ <price>4.95</price>
70
+ <publish_date>2000-09-02</publish_date>
71
+ <description>
72
+ When Carla meets Paul at an ornithology
73
+ conference, tempers fly as feathers get ruffled.
74
+ </description>
75
+ </book>
76
+ <book id="bk107">
77
+ <author>Thurman, Paula</author>
78
+ <title>Splish Splash</title>
79
+ <genre>Romance</genre>
80
+ <price>4.95</price>
81
+ <publish_date>2000-11-02</publish_date>
82
+ <description>
83
+ A deep sea diver finds true love twenty
84
+ thousand leagues beneath the sea.
85
+ </description>
86
+ </book>
87
+ <book id="bk108">
88
+ <author>Knorr, Stefan</author>
89
+ <title>Creepy Crawlies</title>
90
+ <genre>Horror</genre>
91
+ <price>4.95</price>
92
+ <publish_date>2000-12-06</publish_date>
93
+ <description>
94
+ An anthology of horror stories about roaches,
95
+ centipedes, scorpions and other insects.
96
+ </description>
97
+ </book>
98
+ <book id="bk109">
99
+ <author>Kress, Peter</author>
100
+ <title>Paradox Lost</title>
101
+ <genre>Science Fiction</genre>
102
+ <price>6.95</price>
103
+ <publish_date>2000-11-02</publish_date>
104
+ <description>
105
+ After an inadvertant trip through a Heisenberg
106
+ Uncertainty Device, James Salway discovers the problems
107
+ of being quantum.
108
+ </description>
109
+ </book>
110
+ <book id="bk110">
111
+ <author>O'Brien, Tim</author>
112
+ <title>Microsoft .NET: The Programming Bible</title>
113
+ <genre>Computer</genre>
114
+ <price>36.95</price>
115
+ <publish_date>2000-12-09</publish_date>
116
+ <description>
117
+ Microsoft's .NET initiative is explored in
118
+ detail in this deep programmer's reference.
119
+ </description>
120
+ </book>
121
+ <book id="bk111">
122
+ <author>O'Brien, Tim</author>
123
+ <title>MSXML3: A Comprehensive Guide</title>
124
+ <genre>Computer</genre>
125
+ <price>36.95</price>
126
+ <publish_date>2000-12-01</publish_date>
127
+ <description>
128
+ The Microsoft MSXML3 parser is covered in
129
+ detail, with attention to XML DOM interfaces, XSLT processing,
130
+ SAX and more.
131
+ </description>
132
+ </book>
133
+ <book id="bk112">
134
+ <author>Galos, Mike</author>
135
+ <title>Visual Studio 7: A Comprehensive Guide</title>
136
+ <genre>Computer</genre>
137
+ <price>49.95</price>
138
+ <publish_date>2001-04-16</publish_date>
139
+ <description>
140
+ Microsoft Visual Studio 7 is explored in depth,
141
+ looking at how Visual Basic, Visual C++, C#, and ASP+ are
142
+ integrated into a comprehensive development
143
+ environment.
144
+ </description>
145
+ </book>
146
+ </catalog>
@@ -0,0 +1,58 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <template>
3
+ <body>
4
+ <section>
5
+ <txt>Some Preset Data Here</txt>
6
+ <txt>Some Preset Data Here</txt>
7
+ <txt>name: quack!</txt>
8
+ <txt>Some Preset Data Here</txt>
9
+ <txt>Some Preset Data Here</txt>
10
+ <txt>Some Preset Data Here</txt>
11
+ <txt>Some Preset Data Here</txt>
12
+ <txt>city: quack!</txt>
13
+ <txt>Some Preset Data Here</txt>
14
+ <txt>Some Preset Data Here</txt>
15
+ <txt>Some Preset Data Here</txt>
16
+ <txt>Some Preset Data Here</txt>
17
+ <txt>state: quack!</txt>
18
+ <txt>Some Preset Data Here</txt>
19
+ <txt>Some Preset Data Here</txt>
20
+ <txt>Some Preset Data Here</txt>
21
+ <txt>Some Preset Data Here</txt>
22
+ <row>
23
+ <txt>year: Vroom!</txt>
24
+ <txt>make: Vroom!</txt>
25
+ <txt>model: Vroom!</txt>
26
+ </row>
27
+ <row>
28
+ <txt>year: Vroom!</txt>
29
+ <txt>make: Vroom!</txt>
30
+ <txt>model: Vroom!</txt>
31
+ </row>
32
+ <row>
33
+ <txt>year: Vroom!</txt>
34
+ <txt>make: Vroom!</txt>
35
+ <txt>model: Vroom!</txt>
36
+ </row>
37
+ <txt>Some Preset Data Here</txt>
38
+ <txt>Some Preset Data Here</txt>
39
+ <row>
40
+ <txt>year: Vroom!</txt>
41
+ <txt>make: Vroom!</txt>
42
+ <txt>model: Vroom!</txt>
43
+ </row>
44
+ <row>
45
+ <txt>year: Vroom!</txt>
46
+ <txt>make: Vroom!</txt>
47
+ <txt>model: Vroom!</txt>
48
+ </row>
49
+ <row>
50
+ <txt>year: Vroom!</txt>
51
+ <txt>make: Vroom!</txt>
52
+ <txt>model: Vroom!</txt>
53
+ </row>
54
+ <txt>Some Preset Data Here</txt>
55
+ <txt>Some Preset Data Here</txt>
56
+ </section>
57
+ </body>
58
+ </template>
@@ -0,0 +1,238 @@
1
+ <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
2
+ "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
3
+ <html xmlns="http://www.w3.org/1999/xhtml">
4
+ <head>
5
+ <title>Ruby Programming Language</title>
6
+ <link rel="stylesheet" type="text/css" href="/stylesheets/low.css" />
7
+ <link rel="stylesheet" type="text/css" href="/stylesheets/screen.css" media="screen" />
8
+ <link rel="stylesheet" type="text/css" href="/stylesheets/print.css" media="print" />
9
+ <link title="Low vision" rel="alternate stylesheet" type="text/css" href="/stylesheets/low_vision_screen.css" media="screen" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
11
+ <link href="/en/feeds/news.rss" rel="alternate" title="RSS" type="application/rss+xml" />
12
+
13
+ </head>
14
+ <body id="home-page-layout">
15
+ <div id="page">
16
+ <div id="header">
17
+ <div id="logo"><img src="/images/logo.gif" width="331" height="119" alt="Ruby - A Programmer's Best Friend" title="" /></div>
18
+ <div class="site-links">
19
+ <a href="/en/downloads/">Downloads</a><span class="separator"> | </span><a href="/en/documentation/">Documentation</a><span class="separator"> | </span><a href="/en/libraries/">Libraries</a><span class="separator"> | </span><a href="/en/community/">Community</a><span class="separator"> | </span><a href="/en/news/">News</a><span class="separator"> | </span><a href="/en/security/">Security</a><span class="separator"> | </span><a href="/en/about/">About Ruby</a>
20
+ </div>
21
+ </div>
22
+ <hr class="hidden-modern" />
23
+ <div id="main-wrapper">
24
+ <div id="main">
25
+ <div id="content-wrapper">
26
+ <div id="head-wrapper-1">
27
+ <div id="head-wrapper-2">
28
+ <div id="head">
29
+
30
+ <div id="intro">
31
+ <h1>Ruby is&#8230;</h1>
32
+ <p>A dynamic, open source programming language with a focus on
33
+ simplicity and productivity. It has an elegant syntax that is
34
+ natural to read and easy to write.</p>
35
+ <p><a href="about/">Read&nbsp;More&#8230;</a></p>
36
+ </div>
37
+ <div id="code">
38
+
39
+ <div class="comment"># The Greeter class</div>
40
+ <div><span class="keyword">class</span> Greeter</div>
41
+ <div>&nbsp;&nbsp;<span class="keyword">def</span> initialize<span class="op">(</span>name<span class="op">)</span></div>
42
+ <div>&nbsp;&nbsp;&nbsp;&nbsp;@name <span class="op">=</span> name<span class="op">.</span>capitalize</div>
43
+ <div>&nbsp;&nbsp;<span class="keyword">end</span></div>
44
+ <div class="blank-line">&nbsp;</div>
45
+ <div>&nbsp;&nbsp;<span class="keyword">def</span> salute</div>
46
+ <div>&nbsp;&nbsp;&nbsp;&nbsp;puts <span class="string">"Hello #{</span><span class="op">@</span>name<span class="string">}!"</span></div>
47
+ <div>&nbsp;&nbsp;<span class="keyword">end</span></div>
48
+ <div><span class="keyword">end</span></div>
49
+ <div class="blank-line">&nbsp;</div>
50
+ <div class="comment"># Create a new object</div>
51
+ <div>g <span class="op">=</span> Greeter<span class="op">.</span>new<span class="op">(</span><span class="string">"world"</span><span class="op">)</span></div>
52
+ <div class="blank-line">&nbsp;</div>
53
+ <div class="comment"># Output "Hello World!"</div>
54
+ <div>g<span class="op">.</span>salute</div>
55
+
56
+
57
+ </div>
58
+ </div>
59
+ </div>
60
+ </div>
61
+ <div id="content">
62
+
63
+
64
+
65
+
66
+ <div class="post">
67
+ <h3><a href="/en/news/2008/11/10/scotland-on-rails-2009/">Scotland on Rails 2009</a></h3>
68
+
69
+ <p><a href="http://scotlandonrails.com">Scotland on Rails</a> is pleased to announce that Conference2009 will be held March 26-28 in Edinburgh, Scotland.</p>
70
+
71
+
72
+ <p>We are now accepting submissions. The closing date for submissions is December 1st 2008, so there&#8217;s still time! Please mail your plaintext proposals for 45 minute sessions to <a href="mailto:submissions@scotlandonrails.com">submissions@scotlandonrails.com</a>.</p>
73
+
74
+
75
+ <p>Alternatively, if you are interested in sponsoring the conference, please mail <a href="mailto:sponsorship@scotlandonrails.com">sponsorship@scotlandonrails.com</a> for a prospectus.</p>
76
+
77
+
78
+ <p>Lastly, if you wish to be notified when we open for registration, you can sign up on the site.</p>
79
+
80
+
81
+ <p>Come and enjoy all that Edinburgh has to offer (whisky! castle! volcano! ruby! whisky!) in March. We hope to see you there.</p>
82
+
83
+
84
+
85
+ <p class="post-info">Posted by James Edward Gray II on 10 Nov 2008</p>
86
+ </div>
87
+
88
+
89
+ <div class="post">
90
+ <h3><a href="/en/news/2008/11/08/mountainwest-rubyconf-2009-dates-and-cfp/">MountainWest RubyConf 2009 dates and CFP</a></h3>
91
+
92
+ <p><a href="http://mtnwestrubyconf.org">MountainWest RubyConf 2009</a> will be held March 13-14, 2009, in Salt Lake City, Utah, <span class="caps">USA</span>.</p>
93
+
94
+
95
+ <p>Proposals to speak at this regional conference are now being accepted. Please send your proposal to proposals@mtnwestrubyconf.org.</p>
96
+
97
+
98
+ <p>The submission deadline is midnight (MST) on December 31st, 2008.</p>
99
+
100
+
101
+ <p>There are sponsorship opportunities available as well. Please contact sponsorship@mtnwestruby.org if you are interested.</p>
102
+
103
+
104
+ <p>Please see <a href="http://mtnwestrubyconf.org">mtnwestrubyconf.org/</a> for more details as they become available.</p>
105
+
106
+ <p><a href="/en/news/2008/11/08/mountainwest-rubyconf-2009-dates-and-cfp/">Continue&nbsp;Reading&#8230;</a></p>
107
+
108
+ <p class="post-info">Posted by james on 08 Nov 2008</p>
109
+ </div>
110
+
111
+
112
+
113
+ <div id="news">
114
+ <h3><a href="/en/news/">Other News</a></h3>
115
+ <ul>
116
+ <li><a href="/en/news/2008/10/28/ruby-1-9-1-preview-1-released/"> Ruby 1.9.1-preview 1 released</a>
117
+ <span class="post-info">Posted by james on 28 Oct 2008</span></li>
118
+ <li><a href="/en/news/2008/10/02/rubyconf-2008-is-sold-out/">RubyConf 2008 is Sold-out</a>
119
+ <span class="post-info">Posted by james on 02 Oct 2008</span></li>
120
+ <li><a href="/en/news/2008/09/09/voices-that-matter-2008/">Voices That Matter 2008</a>
121
+ <span class="post-info">Posted by James Edward Gray II on 09 Sep 2008</span></li>
122
+ </ul>
123
+ <ul>
124
+ <li><a href="/en/news/2008/08/23/dos-vulnerability-in-rexml/">DoS vulnerability in REXML</a>
125
+ <span class="post-info">Posted by Shugo Maeda on 23 Aug 2008</span></li>
126
+ <li><a href="/en/news/2008/08/11/ruby-1-8-7-p72-and-1-8-6-p287-released/">Ruby 1.8.7-p72 and 1.8.6-p287 released</a>
127
+ <span class="post-info">Posted by Shugo Maeda on 11 Aug 2008</span></li>
128
+ <li><a href="/en/news/2008/08/08/multiple-vulnerabilities-in-ruby/">Multiple vulnerabilities in Ruby</a>
129
+ <span class="post-info">Posted by Shugo Maeda on 08 Aug 2008</span></li>
130
+ </ul>
131
+ <p class="more"><a href="/en/news/">More&nbsp;News&#8230;</a></p>
132
+ </div>
133
+
134
+
135
+
136
+
137
+ </div>
138
+ </div>
139
+ <hr class="hidden-modern" />
140
+ <div id="sidebar-wrapper">
141
+ <div id="sidebar">
142
+
143
+ <div class="navigation"><a href="/en/downloads/"><img src="/images/download.gif" alt="Download Ruby" title="" /></a></div>
144
+
145
+
146
+ <div class="navigation">
147
+ <h3><strong>Get Started,</strong> it&#8217;s easy!</h3>
148
+ <ul class="menu">
149
+ <li><a href="http://tryruby.hobix.com/">Try Ruby! (in your browser)</a></li>
150
+
151
+ <li><a href="/en/documentation/quickstart/">Ruby in Twenty Minutes</a></li>
152
+ <li><a href="/en/documentation/ruby-from-other-languages/">Ruby from Other Languages</a></li>
153
+ </ul>
154
+ </div>
155
+
156
+ <div class="navigation">
157
+ <h3><strong>Explore</strong> a new world&hellip;</h3>
158
+ <ul class="menu">
159
+ <li><a href="/en/documentation/">Documentation</a></li>
160
+ <li><a href="http://www.amazon.com">Books</a></li>
161
+ <li><a href="/en/libraries/">Libraries</a></li>
162
+ <li><a href="/en/documentation/success-stories/">Success Stories</a></li>
163
+ </ul>
164
+ </div>
165
+
166
+ <div class="navigation">
167
+ <h3><strong>Participate</strong> in a friendly and growing community.</h3>
168
+ <ul>
169
+ <li><a href="/en/community/mailing-lists/">Mailing Lists</a>: Talk about Ruby with programmers from all around the world.</li>
170
+ <li><a href="/en/community/user-groups/">User Groups</a>: Get in contact with Rubyists in your area.</li>
171
+ <li><a href="/en/community/weblogs/">Weblogs</a>: Read about what&#8217;s happening right now in the Ruby community.</li>
172
+ <li><a href="/en/community/ruby-core/">Ruby Core</a>: Help polish the rough edges of the latest Ruby.</li>
173
+ <li><a href="http://redmine.ruby-lang.org/">Issue Tracking</a>: Report or help solve issues in Ruby.</li>
174
+ </ul>
175
+ </div>
176
+
177
+
178
+ <h3>Top Ruby Projects</h3>
179
+
180
+ <ul>
181
+ <li><a href="http://rubyforge.org/projects/instantrails/" title="Instant Rails is a one-stop Rails runtime solution containing Ruby, Rails, Apache, and MySQL, all pre-configured and ready to run. No installer, you simply drop it into the directory of your choice and run it. It does not modify your system environment. ">Instant Rails</a></li>
182
+
183
+ <li><a href="http://rubyforge.org/projects/ruby/" title="Main Ruby language project for providing a mirror of the Ruby releases, tracking bugs, etc.">Ruby</a></li>
184
+
185
+ <li><a href="http://rubyforge.org/projects/nitro/" title="Nitro is an efficient, yet simple engine for developing professional Web Applications using the Ruby language.">Nitro</a></li>
186
+
187
+ <li><a href="http://rubyforge.org/projects/activesupport/" title="Utility classes and extension to the standard library that were required by Rails, but found of general use.">Active Support</a></li>
188
+
189
+ <li><a href="http://rubyforge.org/projects/typo/" title="Typo is a lean weblogging engine powered by rails. It supports XMLRPC posting, ping/trackback, comments, textile, markdown, categories, all common exports, fulltext search and so on.">typo</a></li>
190
+
191
+ </ul>
192
+ <p class="more"><a href="/en/libraries/top-projects/">More&#8230;</a></p>
193
+
194
+
195
+ <h3>Syndicate</h3>
196
+ <p><a href="/en/feeds/news.rss">Recent News (RSS)</a></p>
197
+ </div>
198
+ </div>
199
+ <hr class="hidden-modern" />
200
+ <div class="foot">
201
+ <div class="site-links">
202
+ <a href="/en/downloads/">Downloads</a><span class="separator"> | </span><a href="/en/documentation/">Documentation</a><span class="separator"> | </span><a href="/en/libraries/">Libraries</a><span class="separator"> | </span><a href="/en/community/">Community</a><span class="separator"> | </span><a href="/en/news/">News</a><span class="separator"> | </span><a href="/en/security/">Security</a><span class="separator"> | </span><a href="/en/about/">About Ruby</a>
203
+ </div>
204
+ </div>
205
+ </div>
206
+ </div>
207
+ <div id="search-box">
208
+ <form id="search-form" action="/en/search/">
209
+ <table class="fieldset">
210
+ <tr>
211
+ <td>
212
+ <input class="field" type="text" name="q" />
213
+ </td>
214
+ <td>
215
+ <input class="button" type="submit" value="Search" />
216
+ </td>
217
+ </tr>
218
+ </table>
219
+ </form>
220
+ </div>
221
+ <div id="footer">
222
+ <div class="fine-print">
223
+ <p>Content available in <a href="/en/">English</a>, <a href="/fr/">French</a>, <a href="/ja/">Japanese</a>, <a href="/ko/">Korean</a>, <a href="/pl/">Polish</a>, <a href="/es/">Spanish</a>, <a href="/pt/">Portuguese</a>, <a href="/zh_CN/">Simplified Chinese</a>, <a href="/zh_TW/">Traditional Chinese</a>, <a href="/id/">Bahasa Indonesia</a>, <a href="/de/">German</a> and <a href="/it/">Italian</a>.</p>
224
+ <p>This website is made with Ruby and powered by <a href="http://radiantcms.org">Radiant CMS</a>.
225
+ It is proudly maintained by <a href="http://rubyidentity.org">members of the Ruby community</a>. Please contact
226
+ our <a href="mailto:webmaster@ruby-lang.org">webmaster</a> for questions or comments
227
+ concerning this website.</p>
228
+ </div>
229
+ </div>
230
+ </div>
231
+ <script src="http://www.google-analytics.com/urchin.js" type="text/javascript">
232
+ </script>
233
+ <script type="text/javascript">
234
+ _uacct = "UA-620926-1";
235
+ urchinTracker();
236
+ </script>
237
+ </body>
238
+ </html>