gecko-dev/java/xpcom/test/JSISample.idl

74 строки
2.2 KiB
Plaintext

/*
* The contents of this file are subject to the Mozilla Public
* License Version 1.1 (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.mozilla.org/MPL/
*
* Software distributed under the License is distributed on an "AS
* IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
* implied. See the License for the specific language governing
* rights and limitations under the License.
*
* The Original Code is mozilla.org code.
*
* The Initial Developer of the Original Code is Frank
* Mitchell. Portions created by Frank Mitchell are
* Copyright (C) 1999 Frank Mitchell. All
* Rights Reserved.
*
* Contributor(s):
* Frank Mitchell (frank.mitchell@sun.com)
*/
/* -*- Mode: IDL; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
*
* blah blah blah.
*/
#include "nsISupports.idl"
interface JSIComplex;
[object, uuid(57ecad90-ae1a-11d1-b66c-00805f8a2676)]
interface JSISample : nsISupports {
// basic method
void PrintStats();
// attributes
attribute long someInt;
attribute boolean someBool;
readonly attribute long roInt;
attribute double someDouble;
attribute string someName;
readonly attribute string roString;
// methods
void TakeInt(in long anInt);
long GiveInt();
long GiveAndTake(inout long anInt);
string TooManyArgs(in short oneInt,
in short twoInt,
inout long redInt,
out short blueInt,
in double orNothing,
in long long johnSilver,
in boolean algebra);
string CatStrings(in string str1, in string str2);
void AppendString(inout string str1, in string str2);
JSIComplex NewComplex(in long aReal, in long anImaginary);
JSIComplex AddComplex(in JSIComplex complex1, in JSIComplex complex2);
void AddInPlace(inout JSIComplex complex1, in JSIComplex complex2);
long AddTwoInts(in long int1, in long int2);
};
[object, uuid(57ecad91-ae1a-11d1-b66c-00805f8a2676)]
interface JSIComplex : nsISupports {
// attributes
attribute long real;
attribute long imaginary;
};