| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136 |
- using System;
- using System.Collections.Generic;
- using System.Text;
- using System.ServiceModel;
- namespace MonoTests.Features.Contracts
- {
- // Define a service contract.
- [ServiceContract (Namespace = "http://MonoTests.Features.Contracts")]
- public interface IPrimitiveTesterContract
- {
- [OperationContract]
- void DoNothing ();
- [OperationContract]
- int AddByte (byte n1, byte n2);
- [OperationContract]
- int AddSByte (sbyte n1, sbyte n2);
- [OperationContract]
- int AddShort (short n1, short n2);
- [OperationContract]
- int AddUShort (ushort n1, ushort n2);
- [OperationContract]
- int AddInt (int n1, int n2);
- [OperationContract]
- uint AddUInt (uint n1, uint n2);
- [OperationContract]
- long AddLong (long n1, long n2);
- [OperationContract]
- ulong AddULong (ulong n1, ulong n2);
- [OperationContract]
- double AddDouble (double n1, double n2);
- [OperationContract]
- float AddFloat (float n1, float n2);
- [OperationContract]
- char AddChar (char n1, char c2);
- [OperationContract]
- void AddByRef(double n1, double n2, out double n3, out double n4);
- [OperationContract]
- int? NullableInt (int? x);
- [OperationContract]
- float? NullableFloat (float? x);
- [OperationContract]
- TimeSpan AddTimeSpan (TimeSpan t1, TimeSpan t2);
- [OperationContract]
- byte [] AddByteArray (byte [] b1, byte [] b2);
- }
-
- public class PrimitiveTester : IPrimitiveTesterContract
- {
- public void DoNothing () {
- }
- public int AddByte (byte n1, byte n2) {
- return (byte) n1 + n2;
- }
- public int AddSByte (sbyte n1, sbyte n2) {
- return n1 + n2;
- }
- public int AddShort (short n1, short n2) {
- return n1 + n2;
- }
- public int AddUShort (ushort n1, ushort n2) {
- return n1 + n2;
- }
- public int AddInt (int n1, int n2) {
- return n1 + n2;
- }
- public uint AddUInt (uint n1, uint n2) {
- return n1 + n2;
- }
- public long AddLong (long n1, long n2) {
- return n1 + n2;
- }
- public ulong AddULong (ulong n1, ulong n2) {
- return n1 + n2;
- }
- public double AddDouble (double n1, double n2) {
- return n1 + n2;
- }
- public float AddFloat (float n1, float n2) {
- return n1 + n2;
- }
- public char AddChar (char n1, char n2) {
- return (char)(n1 + n2);
- }
- public void AddByRef (double n1, double n2, out double n3, out double n4) {
- n3 = n4 = n1 + n2;
- }
- public int? NullableInt(int?x) {
- return x==null ? x : x+1;
- }
- public float? NullableFloat (float? x) {
- return x == null ? x : x + 1;
- }
- public TimeSpan AddTimeSpan (TimeSpan t1, TimeSpan t2) {
- return t1.Add (t2);
- }
- public byte [] AddByteArray (byte [] b1, byte [] b2) {
- byte [] ret = new byte [b1.Length];
- for (int i = 0; i < b1.Length; i++)
- ret [i] = (byte) (b1 [i] + b2 [i]);
- return ret;
- }
- }
- }
|