summaryrefslogtreecommitdiff
path: root/ruby_1_8_5/sample/export.rb
diff options
context:
space:
mode:
Diffstat (limited to 'ruby_1_8_5/sample/export.rb')
-rw-r--r--ruby_1_8_5/sample/export.rb40
1 files changed, 40 insertions, 0 deletions
diff --git a/ruby_1_8_5/sample/export.rb b/ruby_1_8_5/sample/export.rb
new file mode 100644
index 0000000000..949e5b10bf
--- /dev/null
+++ b/ruby_1_8_5/sample/export.rb
@@ -0,0 +1,40 @@
+# method access permission
+# output:
+# foobar
+# Foo
+
+class Foo
+ public :printf
+ def baz
+ print "baz\n"
+ end
+ private :baz
+
+ def quux
+ print "in QUUX "
+ baz()
+ end
+end
+
+def foobar
+ print "foobar\n"
+end
+
+f = Foo.new
+#Foo.private :printf
+class Foo # redefines foobar's scope
+ public :foobar
+end
+f.foobar
+f.printf "%s\n", Foo
+
+f.quux
+
+class Bar<Foo
+ def quux
+ super
+ baz()
+ end
+end
+
+Bar.new.quux