diff options
author | Alistair Delva <adelva@google.com> | 2024-04-10 14:15:29 -0700 |
---|---|---|
committer | Alistair Delva <adelva@google.com> | 2024-04-11 12:58:28 -0700 |
commit | d0f0f90be16c2ac553b5fa08512045273135147a (patch) | |
tree | 5d9ebb7a04807ea8a609ddd18b0162bc87530e4b /Examples/test-suite/ruby_global_immutable_vars.i | |
parent | 6ffc1dbf29ba98c4d8aa71ebc9b484e973fe1030 (diff) | |
download | swig-d0f0f90be16c2ac553b5fa08512045273135147a.tar.gz |
Change-Id: I47cef2be94299220d80265d949a95b58eee2c23b
Diffstat (limited to 'Examples/test-suite/ruby_global_immutable_vars.i')
-rw-r--r-- | Examples/test-suite/ruby_global_immutable_vars.i | 34 |
1 files changed, 34 insertions, 0 deletions
diff --git a/Examples/test-suite/ruby_global_immutable_vars.i b/Examples/test-suite/ruby_global_immutable_vars.i new file mode 100644 index 000000000..6f067d269 --- /dev/null +++ b/Examples/test-suite/ruby_global_immutable_vars.i @@ -0,0 +1,34 @@ +%module ruby_global_immutable_vars + +// This copy of global_immutable_vars.i shall be compiled with the +// SWIG Ruby option "-globalmodule" in order to check the code path +// for registering global methods (in contrast to module methods). + +%inline %{ + int default_mutable_var = 40; +%} + +%immutable; +%feature("immutable", "0") specific_mutable_var; + +%inline %{ + int global_immutable_var = 41; + int specific_mutable_var = 42; +%} + +%mutable; +%immutable specific_immutable_var; +%inline %{ + int global_mutable_var = 43; + int specific_immutable_var = 44; + + int check_values(int default_mutable, int global_immutable, int specific_mutable, int global_mutable, int specific_immutable) { + return + default_mutable == default_mutable_var && + global_immutable == global_immutable_var && + specific_mutable == specific_mutable_var && + global_mutable == global_mutable_var && + specific_immutable == specific_immutable_var; + } +%} + |