1// Copyright 2013 The Chromium Authors. All rights reserved. 2// Use of this source code is governed by a BSD-style license that can be 3// found in the LICENSE file. 4 5// An API to test IDL schema specifications. 6namespace idltest { 7 8 callback LongArrayCallback = void(long[] array); 9 callback ArrayBufferCallback = void(ArrayBuffer buffer); 10 11 interface Functions { 12 // Functions for testing binary data request/response parameters. The first 13 // two just return back the bytes they were passed in an array. 14 static void sendArrayBuffer(ArrayBuffer input, LongArrayCallback cb); 15 16 // TODO(asargent) - we currently can't have [instanceOf=ArrayBufferView], 17 // I think because ArrayBufferView isn't an instantiable type. The best 18 // we might be able to do is have a 'choices' list including all the 19 // typed array subclasses like Uint8Array, Uint16Array, Float32Array, etc. 20 static void sendArrayBufferView([instanceOf=Uint8Array] object input, 21 LongArrayCallback cb); 22 static void getArrayBuffer(ArrayBufferCallback cb); 23 24 // This function should not have C++ code autogenerated (the variable name 25 // |switch| should cause compile errors if it does). But the name should 26 // get defined and made visible from within extensions/apps code. 27 [nocompile] static void nocompileFunc(long switch); 28 }; 29 30}; 31