| // Copyright 2015 The Cobalt Authors. All Rights Reserved. |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| interface OperationsTestInterface { |
| void voidFunctionNoArgs(); |
| DOMString stringFunctionNoArgs(); |
| long longFunctionNoArgs(); |
| ArbitraryInterface objectFunctionNoArgs(); |
| void voidFunctionStringArg(DOMString arg); |
| void voidFunctionLongArg(long arg); |
| void voidFunctionObjectArg(ArbitraryInterface arg); |
| void optionalArguments(long arg1, optional long arg2, optional long arg3); |
| void optionalArgumentWithDefault(optional double arg1 = 2.718); |
| void optionalNullableArgumentsWithDefaults( |
| optional boolean? arg1 = null, |
| optional ArbitraryInterface? arg2 = null); |
| |
| void variadicPrimitiveArguments(long... bools); |
| void variadicStringArgumentsAfterOptionalArgument( |
| optional boolean optionalArg, DOMString... strings); |
| |
| void overloadedFunction(); |
| void overloadedFunction(long arg); |
| void overloadedFunction(DOMString arg); |
| void overloadedFunction(long arg1, long arg2, long arg3); |
| void overloadedFunction(long arg1, long arg2, ArbitraryInterface arg3); |
| |
| // double and long are not distinguishable, but because this is a static |
| // function it is part of the same overload set as the one that takes long. |
| static void overloadedFunction(double arg); |
| static void overloadedFunction(double arg1, double arg2); |
| |
| void overloadedNullable(long arg); |
| void overloadedNullable(boolean? arg); |
| }; |