mirror of https://github.com/swig/swig
57 lines
1.3 KiB
C#
57 lines
1.3 KiB
C#
using System;
|
|
using director_wstringNamespace;
|
|
|
|
public class runme
|
|
{
|
|
static void Main()
|
|
{
|
|
runme r = new runme();
|
|
r.run();
|
|
}
|
|
|
|
void run()
|
|
{
|
|
director_wstring_B b = new director_wstring_B("hello");
|
|
|
|
b.get(0);
|
|
if (b.get_first() != "hello world!")
|
|
throw new ApplicationException("Incorrect get_first:" + b.get_first());
|
|
|
|
b.call_process_func();
|
|
if (b.smem != "hello")
|
|
throw new ApplicationException("Incorrect smem:" + b.smem);
|
|
|
|
b.call_process_wstring_func();
|
|
if (b.smem != "hello (wstring)")
|
|
throw new ApplicationException("Incorrect smem:" + b.smem);
|
|
|
|
b.call_process_wstring_ref_func();
|
|
if (b.smem != "hello (wstring ref)")
|
|
throw new ApplicationException("Incorrect smem:" + b.smem);
|
|
}
|
|
}
|
|
|
|
class director_wstring_B : A
|
|
{
|
|
public String smem;
|
|
public director_wstring_B(String first) : base(first)
|
|
{
|
|
}
|
|
public override String get_first()
|
|
{
|
|
return base.get_first() + " world!";
|
|
}
|
|
public override void process_text(String s)
|
|
{
|
|
this.smem = s;
|
|
}
|
|
public override void process_wstring_text(String s)
|
|
{
|
|
this.smem = s + " (wstring)";
|
|
}
|
|
public override void process_wstring_ref_text(String s)
|
|
{
|
|
this.smem = s + " (wstring ref)";
|
|
}
|
|
}
|