File: rname.i

package info (click to toggle)
renderdoc 1.2%2Bdfsg-2
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 79,584 kB
  • sloc: cpp: 491,671; ansic: 285,823; python: 12,617; java: 11,345; cs: 7,181; makefile: 6,703; yacc: 5,682; ruby: 4,648; perl: 3,461; php: 2,119; sh: 2,068; lisp: 1,835; tcl: 1,068; ml: 747; xml: 137
file content (59 lines) | stat: -rw-r--r-- 1,553 bytes parent folder | download | duplicates (11)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
// This module tests various facets of the %rename directive

%module rname

/* Applied everywhere */
%rename(foo_i) foo(int);
%rename(foo_d) foo(double);

/* Applied only to global scope */

%rename(foo_s) ::foo(short);

/* Applied only to class scope */

%rename(foo_u) *::foo(unsigned);

/* Rename classes in a class hierarchy */
%rename (RenamedBase) Space::Base;
%rename (RenamedDerived) Space::Derived;

/* Rename base class method applies to derived classes too */#
%rename (newname) Space::Base::oldname(double d) const;

/* Rename derived class method only */
%rename (Xfunc) Space::Derived::fn(Base baseValue, Base* basePtr, Base& baseRef);

%inline %{
class Bar {
public:
   char *foo(int)      { return (char *) "Bar::foo-int"; }
   char *foo(double)   { return (char *) "Bar::foo-double"; }
   char *foo(short)    { return (char *) "Bar::foo-short"; }
   char *foo(unsigned) { return (char *) "Bar::foo-unsigned"; }
};

char *foo(int)      { return (char *) "foo-int"; }
char *foo(double)   { return (char *) "foo-double"; }
char *foo(short)    { return (char *) "foo-short"; }
char *foo(unsigned) { return (char *) "foo-unsigned"; }

namespace Space {
class Base {
public: 
  Base(){}; 
  virtual ~Base(){};
  void fn(Base baseValue, Base* basePtr, Base& baseRef){}
  virtual const char * oldname(double d) const { return "Base"; }
};
class Derived : public Base {
public:
  Derived(){}
  ~Derived(){}
  void fn(Base baseValue, Base* basePtr, Base& baseRef){}
  virtual const char * oldname(double d) const { return "Derived"; }
};
}

%}