mirror of https://github.com/swig/swig.git
35 lines
850 B
C#
35 lines
850 B
C#
using System;
|
|
using cpp11_move_onlyNamespace;
|
|
|
|
public class cpp11_move_only_runme {
|
|
|
|
public static void Main() {
|
|
|
|
// Output
|
|
Counter.reset_counts();
|
|
using (MoveOnly mo = MoveOnly.create()) {
|
|
}
|
|
Counter.check_counts(1, 0, 0, 2, 0, 3);
|
|
|
|
Counter.reset_counts();
|
|
using (MovableCopyable mo = MovableCopyable.create()) {
|
|
}
|
|
Counter.check_counts(2, 1, 0, 0, 1, 3);
|
|
|
|
// Move semantics not used
|
|
Counter.reset_counts();
|
|
using (MovableCopyable mo = MovableCopyable.createConst()) {
|
|
}
|
|
Counter.check_counts(2, 1, 1, 0, 0, 3);
|
|
|
|
// Input
|
|
Counter.reset_counts();
|
|
using (MovableCopyable mo = new MovableCopyable(222)) {
|
|
Counter.check_counts(1, 0, 0, 0, 0, 0);
|
|
MovableCopyable.take(mo);
|
|
Counter.check_counts(2, 0, 1, 1, 0, 2);
|
|
}
|
|
Counter.check_counts(2, 0, 1, 1, 0, 3);
|
|
}
|
|
}
|