nsIProgrammingLanguage.idl 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. /* -*- Mode: C++; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
  2. *
  3. * ***** BEGIN LICENSE BLOCK *****
  4. * Version: MPL 1.1/GPL 2.0/LGPL 2.1
  5. *
  6. * The contents of this file are subject to the Mozilla Public License Version
  7. * 1.1 (the "License"); you may not use this file except in compliance with
  8. * the License. You may obtain a copy of the License at
  9. * http://www.mozilla.org/MPL/
  10. *
  11. * Software distributed under the License is distributed on an "AS IS" basis,
  12. * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  13. * for the specific language governing rights and limitations under the
  14. * License.
  15. *
  16. * The Original Code is Mozilla Communicator client code, released
  17. * March 31, 1998.
  18. *
  19. * The Initial Developer of the Original Code is
  20. * Netscape Communications Corporation.
  21. * Portions created by the Initial Developer are Copyright (C) 1998
  22. * the Initial Developer. All Rights Reserved.
  23. *
  24. * Contributor(s):
  25. * John Bandhauer <[email protected]>
  26. *
  27. * Alternatively, the contents of this file may be used under the terms of
  28. * either of the GNU General Public License Version 2 or later (the "GPL"),
  29. * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
  30. * in which case the provisions of the GPL or the LGPL are applicable instead
  31. * of those above. If you wish to allow use of your version of this file only
  32. * under the terms of either the GPL or the LGPL, and not to allow others to
  33. * use your version of this file under the terms of the MPL, indicate your
  34. * decision by deleting the provisions above and replace them with the notice
  35. * and other provisions required by the GPL or the LGPL. If you do not delete
  36. * the provisions above, a recipient may use your version of this file under
  37. * the terms of any one of the MPL, the GPL or the LGPL.
  38. *
  39. * ***** END LICENSE BLOCK ***** */
  40. #include "nsISupports.idl"
  41. %{C++
  42. #ifdef XP_OS2 // OS2 has UNKNOWN problems :)
  43. #undef UNKNOWN
  44. #endif
  45. %}
  46. /**
  47. * Enumeration of Programming Languages
  48. * @status FROZEN
  49. */
  50. [scriptable, uuid(ea604e90-40ba-11d5-90bb-0010a4e73d9a)]
  51. interface nsIProgrammingLanguage : nsISupports
  52. {
  53. /**
  54. * Identifiers for programming languages.
  55. */
  56. const PRUint32 UNKNOWN = 0;
  57. const PRUint32 CPLUSPLUS = 1;
  58. const PRUint32 JAVASCRIPT = 2;
  59. const PRUint32 PYTHON = 3;
  60. const PRUint32 PERL = 4;
  61. const PRUint32 JAVA = 5;
  62. const PRUint32 ZX81_BASIC = 6; // it could happen :)
  63. const PRUint32 JAVASCRIPT2 = 7;
  64. // This list can grow indefinitely. Just don't ever change an existing item.
  65. };