summaryrefslogtreecommitdiff
path: root/Examples/test-suite/ruby_keywords.i
diff options
context:
space:
mode:
Diffstat (limited to 'Examples/test-suite/ruby_keywords.i')
-rw-r--r--Examples/test-suite/ruby_keywords.i65
1 files changed, 65 insertions, 0 deletions
diff --git a/Examples/test-suite/ruby_keywords.i b/Examples/test-suite/ruby_keywords.i
new file mode 100644
index 000000000..c87efab33
--- /dev/null
+++ b/Examples/test-suite/ruby_keywords.i
@@ -0,0 +1,65 @@
+%module ruby_keywords
+
+// fix up conflicts with C++ keywords
+%rename("and") Keywords::and_;
+%rename("break") Keywords::break_;
+%rename("case") Keywords::case_;
+%rename("class") Keywords::class_;
+%rename("defined?") Keywords::defined_;
+%rename("do") Keywords::do_;
+%rename("else") Keywords::else_;
+%rename("false") Keywords::false_;
+%rename("for") Keywords::for_;
+%rename("if") Keywords::if_;
+%rename("not") Keywords::not_;
+%rename("return") Keywords::return_;
+%rename("or") Keywords::or_;
+%rename("true") Keywords::true_;
+%rename("while") Keywords::while_;
+
+
+%inline %{
+
+class Keywords {
+public:
+ Keywords() {}
+
+ const char* alias() { return "alias"; }
+ const char* and_() { return "and"; }
+ const char* begin() { return "begin"; }
+ const char* break_() { return "break"; }
+ const char* case_() { return "case"; }
+ const char* class_() { return "class"; }
+ const char* def() { return "def"; }
+ const char* defined_() { return "defined?"; }
+ const char* do_() { return "do"; }
+ const char* else_() { return "else"; }
+ const char* elsif() { return "elsif"; }
+ const char* end() { return "end"; }
+ const char* ensure() { return "ensure"; }
+ const char* false_() { return "false"; }
+ const char* for_() { return "for"; }
+ const char* if_() { return "if"; }
+ const char* in() { return "in"; }
+ const char* module() { return "module"; }
+ const char* next() { return "next"; }
+ const char* nil() { return "nil"; }
+ const char* not_() { return "not"; }
+ const char* or_() { return "or"; }
+ const char* redo() { return "redo"; }
+ const char* rescue() { return "rescue"; }
+ const char* retry() { return "retry"; }
+ const char* return_() { return "return"; }
+ const char* self() { return "self"; }
+ const char* super() { return "super"; }
+ const char* then() { return "then"; }
+ const char* true_() { return "true"; }
+ const char* undef() { return "undef"; }
+ const char* under() { return "under"; }
+ const char* unless() { return "unless"; }
+ const char* until() { return "until"; }
+ const char* when() { return "when"; }
+ const char* while_() { return "while"; }
+ const char* yield() { return "yield"; }
+};
+%}