/interpreter/tags/reactive-pattern-matching/src/edu/vub/at/objects/coercion/NativeTypeTags.java

http://ambienttalk.googlecode.com/ · Java · 236 lines · 67 code · 68 blank · 101 comment · 0 complexity · e2fe7b137d46adc3749f3d47cf1382a6 MD5 · raw file

  1. /**
  2. * AmbientTalk/2 Project
  3. * NativeTypeTags.java created on 26-feb-2007 at 16:29:25
  4. * (c) Programming Technology Lab, 2006 - 2007
  5. * Authors: Tom Van Cutsem & Stijn Mostinckx
  6. *
  7. * Permission is hereby granted, free of charge, to any person
  8. * obtaining a copy of this software and associated documentation
  9. * files (the "Software"), to deal in the Software without
  10. * restriction, including without limitation the rights to use,
  11. * copy, modify, merge, publish, distribute, sublicense, and/or
  12. * sell copies of the Software, and to permit persons to whom the
  13. * Software is furnished to do so, subject to the following
  14. * conditions:
  15. *
  16. * The above copyright notice and this permission notice shall be
  17. * included in all copies or substantial portions of the Software.
  18. *
  19. * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
  20. * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
  21. * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
  22. * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
  23. * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
  24. * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
  25. * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
  26. * OTHER DEALINGS IN THE SOFTWARE.
  27. */
  28. package edu.vub.at.objects.coercion;
  29. import edu.vub.at.objects.natives.NATTypeTag;
  30. /**
  31. * This class serves to hold references to the native type tags with which native
  32. * AmbientTalk objects are tagged.
  33. *
  34. * @author tvcutsem
  35. */
  36. public final class NativeTypeTags {
  37. /* Java implementation of lobby.at.types.at: */
  38. //deftype Isolate;
  39. public final static NATTypeTag _ISOLATE_ = NATTypeTag.atValue("Isolate");
  40. //deftype Meta;
  41. public final static NATTypeTag _META_ = NATTypeTag.atValue("Meta");
  42. //deftype Boolean;
  43. public final static NATTypeTag _BOOLEAN_ = NATTypeTag.atValue("Boolean");
  44. //deftype Closure;
  45. public final static NATTypeTag _CLOSURE_ = NATTypeTag.atValue("Closure");
  46. //deftype Context;
  47. public final static NATTypeTag _CONTEXT_ = NATTypeTag.atValue("Context");
  48. //deftype Field;
  49. public final static NATTypeTag _FIELD_ = NATTypeTag.atValue("Field");
  50. //deftype Handler;
  51. public final static NATTypeTag _HANDLER_ = NATTypeTag.atValue("Handler");
  52. //deftype Method;
  53. public final static NATTypeTag _METHOD_ = NATTypeTag.atValue("Method");
  54. //deftype Message;
  55. public final static NATTypeTag _MESSAGE_ = NATTypeTag.atValue("Message");
  56. //deftype MethodInvocation <: Message;
  57. public final static NATTypeTag _METHODINV_ = NATTypeTag.atValue("MethodInvocation", _MESSAGE_);
  58. //deftype FieldSelection <: Message;
  59. public final static NATTypeTag _FIELDSEL_ = NATTypeTag.atValue("FieldSelection", _MESSAGE_);
  60. //deftype Delegation <: Message;
  61. public final static NATTypeTag _DELEGATION_ = NATTypeTag.atValue("Delegation", _MESSAGE_);
  62. //deftype AsyncMessage <: Message;
  63. public final static NATTypeTag _ASYNCMSG_ = NATTypeTag.atValue("AsyncMessage", _MESSAGE_);
  64. //deftype Letter;
  65. public final static NATTypeTag _LETTER_ = NATTypeTag.atValue("Letter");
  66. //deftype Mirror;
  67. public final static NATTypeTag _MIRROR_ = NATTypeTag.atValue("Mirror");
  68. //deftype ActorMirror;
  69. public final static NATTypeTag _ACTORMIRROR_ = NATTypeTag.atValue("ActorMirror");
  70. //deftype TypeTag;
  71. public final static NATTypeTag _TYPETAG_ = NATTypeTag.atValue("TypeTag");
  72. //deftype FarReference;
  73. public final static NATTypeTag _FARREF_ = NATTypeTag.atValue("FarReference");
  74. // abstract grammar
  75. //deftype AbstractGrammar;
  76. public final static NATTypeTag _ABSTRACTGRAMMAR_ = NATTypeTag.atValue("AbstractGrammar");
  77. //deftype Statement;
  78. public final static NATTypeTag _STATEMENT_ = NATTypeTag.atValue("Statement", _ABSTRACTGRAMMAR_);
  79. // deftype Expression;
  80. public final static NATTypeTag _EXPRESSION_ = NATTypeTag.atValue("Expression", _STATEMENT_);
  81. // literal values
  82. //deftype Table <: Expression;
  83. public final static NATTypeTag _TABLE_ = NATTypeTag.atValue("Table", _EXPRESSION_);
  84. //deftype Text <: Expression;
  85. public final static NATTypeTag _TEXT_ = NATTypeTag.atValue("Text", _EXPRESSION_);
  86. //deftype Numeric <: Expression;
  87. public final static NATTypeTag _NUMERIC_ = NATTypeTag.atValue("Numeric", _EXPRESSION_);
  88. //deftype Number <: Numeric;
  89. public final static NATTypeTag _NUMBER_ = NATTypeTag.atValue("Number", _EXPRESSION_);
  90. //deftype Fraction <: Numeric;
  91. public final static NATTypeTag _FRACTION_ = NATTypeTag.atValue("Fraction", _EXPRESSION_);
  92. //deftype Symbol <: Expression;
  93. public final static NATTypeTag _SYMBOL_ = NATTypeTag.atValue("Symbol", _EXPRESSION_);
  94. //deftype Begin <: AbstractGrammar;
  95. public final static NATTypeTag _BEGIN_ = NATTypeTag.atValue("Begin", _ABSTRACTGRAMMAR_);
  96. //deftype Splice <: Expression;
  97. public final static NATTypeTag _SPLICE_ = NATTypeTag.atValue("Splice", _EXPRESSION_);
  98. //deftype UnquoteSplice <: Expression;
  99. public final static NATTypeTag _UQSPLICE_ = NATTypeTag.atValue("UnquoteSplice", _EXPRESSION_);
  100. //deftype MessageCreation <: Expression;
  101. public final static NATTypeTag _MSGCREATION_ = NATTypeTag.atValue("MessageCreation", _EXPRESSION_);
  102. //deftype Definition <: Statement;
  103. public final static NATTypeTag _DEFINITION_ = NATTypeTag.atValue("Definition", _STATEMENT_);
  104. // deftype MethodDefinition <: Definition;
  105. public final static NATTypeTag _METHOD_DEFINITION_ = NATTypeTag.atValue("MethodDefinition", _DEFINITION_);
  106. //
  107. //// exception types
  108. //deftype Exception;
  109. public final static NATTypeTag _EXCEPTION_ = NATTypeTag.atValue("Exception");
  110. //deftype ArityMismatch <: Exception;
  111. public final static NATTypeTag _ARITYMISMATCH_ = NATTypeTag.atValue("ArityMismatch", _EXCEPTION_);
  112. //deftype ClassNotFound <: Exception;
  113. public final static NATTypeTag _CLASSNOTFOUND_ = NATTypeTag.atValue("ClassNotFound", _EXCEPTION_);
  114. //deftype DuplicateSlot <: Exception;
  115. public final static NATTypeTag _DUPLICATESLOT_ = NATTypeTag.atValue("DuplicateSlot", _EXCEPTION_);
  116. //deftype IllegalApplication <: Exception;
  117. public final static NATTypeTag _ILLAPP_ = NATTypeTag.atValue("IllegalApplication", _EXCEPTION_);
  118. //deftype IllegalArgument <: Exception;
  119. public final static NATTypeTag _ILLARG_ = NATTypeTag.atValue("IllegalArgument", _EXCEPTION_);
  120. //deftype IllegalIndex <: Exception;
  121. public final static NATTypeTag _ILLIDX_ = NATTypeTag.atValue("IllegalIndex", _EXCEPTION_);
  122. //deftype IllegalOperation <: Exception;
  123. public final static NATTypeTag _ILLOP_ = NATTypeTag.atValue("IllegalOperation", _EXCEPTION_);
  124. //deftype IllegalParameter <: Exception;
  125. public final static NATTypeTag _ILLPARAM_ = NATTypeTag.atValue("IllegalParameter", _EXCEPTION_);
  126. //deftype IllegalQuote <: Exception;
  127. public final static NATTypeTag _ILLQUOTE_ = NATTypeTag.atValue("IllegalQuote", _EXCEPTION_);
  128. //deftype IllegalSplice <: Exception;
  129. public final static NATTypeTag _ILLSPLICE_ = NATTypeTag.atValue("IllegalSplice", _EXCEPTION_);
  130. //deftype IllegalUnquote <: Exception;
  131. public final static NATTypeTag _ILLUQUOTE_ = NATTypeTag.atValue("IllegalUnquote", _EXCEPTION_);
  132. //deftype IndexOutOfBounds <: Exception;
  133. public final static NATTypeTag _IDXOUTOFBOUNDS_ = NATTypeTag.atValue("IndexOutOfBounds", _EXCEPTION_);
  134. //deftype IOProblem <: Exception;
  135. public final static NATTypeTag _IOPROBLEM_ = NATTypeTag.atValue("IOProblem", _EXCEPTION_);
  136. //deftype NotInstantiatable <: Exception;
  137. public final static NATTypeTag _NOTINSTANTIATABLE_ = NATTypeTag.atValue("NotInstantiatable", _EXCEPTION_);
  138. //deftype ParseError <: Exception;
  139. public final static NATTypeTag _PARSEERROR_ = NATTypeTag.atValue("ParseError", _EXCEPTION_);
  140. //deftype ReflectionFailure <: Exception;
  141. public final static NATTypeTag _REFLECTIONFAILURE_ = NATTypeTag.atValue("ReflectionFailure", _EXCEPTION_);
  142. // deftype SelectorNotFound <: Exception;
  143. public final static NATTypeTag _SELECTORNOTFOUND_ = NATTypeTag.atValue("SelectorNotFound", _EXCEPTION_);
  144. //deftype SymbiosisFailure <: Exception;
  145. public final static NATTypeTag _SYMBIOSISFAILURE_ = NATTypeTag.atValue("SymbiosisFailure", _EXCEPTION_);
  146. //deftype TypeMismatch <: Exception;
  147. public final static NATTypeTag _TYPEMISMATCH_ = NATTypeTag.atValue("TypeMismatch", _EXCEPTION_);
  148. //deftype UnassignableField <: Exception;
  149. public final static NATTypeTag _UNASSIGNABLEFIELD_ = NATTypeTag.atValue("UnassignableField", _EXCEPTION_);
  150. //deftype UndefinedField <: Exception;
  151. public final static NATTypeTag _UNDEFINEDSLOT_ = NATTypeTag.atValue("UndefinedSlot", _EXCEPTION_);
  152. //deftype CustomException <: Exception;
  153. public final static NATTypeTag _CUSTOMEXCEPTION_ = NATTypeTag.atValue("CustomException", _EXCEPTION_);
  154. //deftype JavaException <: Exception;
  155. public final static NATTypeTag _JAVAEXCEPTION_ = NATTypeTag.atValue("JavaException", _EXCEPTION_);
  156. //deftype ImportConflict <: Exception;
  157. public final static NATTypeTag _IMPORTCONFLICT_ = NATTypeTag.atValue("ImportConflict", _EXCEPTION_);
  158. //deftype ObjectOffline <: Exception;
  159. public final static NATTypeTag _OBJECTOFFLINE_ = NATTypeTag.atValue("ObjectOffline", _EXCEPTION_);
  160. //deftype Signal;
  161. public final static NATTypeTag _SIGNAL_ = NATTypeTag.atValue("Signal");
  162. //deftype EventSource <: Signal
  163. public final static NATTypeTag _EVENT_SOURCE_ = NATTypeTag.atValue("EventSource", _SIGNAL_);
  164. //deftype Behavior <: Signal
  165. public final static NATTypeTag _BEHAVIOR_ = NATTypeTag.atValue("Behavior", _SIGNAL_);
  166. //deftype Lifted; // Used to annotate methods which can be applied directly to behaviors.
  167. public final static NATTypeTag _LIFTED_ = NATTypeTag.atValue("Lifted");
  168. }