summaryrefslogtreecommitdiffstats
path: root/tools/NUnit/samples/vb/money/IMoney.vb
diff options
context:
space:
mode:
Diffstat (limited to 'tools/NUnit/samples/vb/money/IMoney.vb')
-rw-r--r--tools/NUnit/samples/vb/money/IMoney.vb37
1 files changed, 37 insertions, 0 deletions
diff --git a/tools/NUnit/samples/vb/money/IMoney.vb b/tools/NUnit/samples/vb/money/IMoney.vb
new file mode 100644
index 0000000..ddc8ae6
--- /dev/null
+++ b/tools/NUnit/samples/vb/money/IMoney.vb
@@ -0,0 +1,37 @@
+' ****************************************************************
+' This is free software licensed under the NUnit license. You
+' may obtain a copy of the license as well as information regarding
+' copyright ownership at http://nunit.org/?p=license&r=2.4.
+' ****************************************************************
+
+Namespace NUnit.Samples
+
+ 'The common interface for simple Monies and MoneyBags.
+ Public Interface IMoney
+
+ 'Adds a money to this money
+ Function Add(ByVal m As IMoney) As IMoney
+
+ 'Adds a simple Money to this money. This is a helper method for
+ 'implementing double dispatch.
+ Function AddMoney(ByVal m As Money) As IMoney
+
+ 'Adds a MoneyBag to this money. This is a helper method for
+ 'implementing double dispatch.
+ Function AddMoneyBag(ByVal s As MoneyBag) As IMoney
+
+ 'True if this money is zero.
+ ReadOnly Property IsZero() As Boolean
+
+ 'Multiplies a money by the given factor.
+ Function Multiply(ByVal factor As Int32) As IMoney
+
+ 'Negates this money.
+ Function Negate() As IMoney
+
+ 'Subtracts a money from this money.
+ Function Subtract(ByVal m As IMoney) As IMoney
+
+ End Interface
+
+End Namespace