/tags/rel-1-3-25/SWIG/Examples/test-suite/csharp_attributes.i
Swig | 48 lines | 40 code | 8 blank | 0 comment | 0 complexity | 6381e92217b8b66ea6ea17c7d8eed65e MD5 | raw file
Possible License(s): LGPL-2.1, Cube, GPL-3.0, 0BSD, GPL-2.0
- %module csharp_attributes
- // Test the inattributes and outattributes typemaps
- %typemap(cstype, outattributes="[IntOut]", inattributes="[IntIn]") int "int"
- %typemap(imtype, outattributes="[IntegerOut]", inattributes="[IntegerIn]") int "int"
- %inline %{
- class Stations {
- public:
- Stations(int myInt) { }
- int Reading(int myInt) { return myInt; }
- static int Swindon(int myInt) { return myInt; }
- };
- #define TESTMACRO 10
- int GlobalFunction(int myInt) { return myInt; }
- %}
- // Test the attributes feature
- %csattributes MoreStations::MoreStations() "[InterCity1]"
- %csattributes MoreStations::Chippenham() "[InterCity2]"
- %csattributes MoreStations::Bath() "[InterCity3]"
- %csattributes Bristol "[InterCity4]"
- %csattributes WestonSuperMare "[InterCity5]"
- %csattributes Wales "[InterCity6]"
- %csattributes Paddington() "[InterCity7]"
- %csattributes DidcotParkway "[InterCity8]"
- %typemap(csattributes) MoreStations "[Eurostar1]"
- %typemap(csattributes) MoreStations::Wales "[Eurostar2]"
- %typemap(csattributes) Cymru "[Eurostar3]"
- %inline %{
- struct MoreStations {
- MoreStations() : Bristol(0) {}
- void Chippenham() {}
- static void Bath() {}
- int Bristol;
- static double WestonSuperMare;
- enum Wales { Cardiff = 1, Swansea };
- };
- void Paddington() {}
- float DidcotParkway;
- enum Cymru { Llanelli };
- double MoreStations::WestonSuperMare = 0.0;
- %}