aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/ScriptEngine/XMREngine/MMRScriptTokenize.cs
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/ScriptEngine/XMREngine/MMRScriptTokenize.cs29
1 files changed, 12 insertions, 17 deletions
diff --git a/OpenSim/Region/ScriptEngine/XMREngine/MMRScriptTokenize.cs b/OpenSim/Region/ScriptEngine/XMREngine/MMRScriptTokenize.cs
index a767dcf..1bdcc27 100644
--- a/OpenSim/Region/ScriptEngine/XMREngine/MMRScriptTokenize.cs
+++ b/OpenSim/Region/ScriptEngine/XMREngine/MMRScriptTokenize.cs
@@ -1504,6 +1504,7 @@ namespace OpenSim.Region.ScriptEngine.XMREngine {
1504 1504
1505 /** 1505 /**
1506 * @brief Get heap tracking type. 1506 * @brief Get heap tracking type.
1507 * null indicates there is no heap tracker for the type.
1507 */ 1508 */
1508 public virtual Type ToHeapTrackerType () 1509 public virtual Type ToHeapTrackerType ()
1509 { 1510 {
@@ -1511,15 +1512,15 @@ namespace OpenSim.Region.ScriptEngine.XMREngine {
1511 } 1512 }
1512 public virtual ConstructorInfo GetHeapTrackerCtor () 1513 public virtual ConstructorInfo GetHeapTrackerCtor ()
1513 { 1514 {
1514 return null; 1515 throw new ApplicationException("no GetHeapTrackerCtor for " + this.GetType());
1515 } 1516 }
1516 public virtual MethodInfo GetHeapTrackerPopMeth () 1517 public virtual void CallHeapTrackerPopMeth (Token errorAt, ScriptMyILGen ilGen)
1517 { 1518 {
1518 return null; 1519 throw new ApplicationException("no CallHeapTrackerPopMeth for " + this.GetType());
1519 } 1520 }
1520 public virtual MethodInfo GetHeapTrackerPushMeth () 1521 public virtual void CallHeapTrackerPushMeth(Token errorAt, ScriptMyILGen ilGen)
1521 { 1522 {
1522 return null; 1523 throw new ApplicationException("no CallHeapTrackerPushMeth for " + this.GetType());
1523 } 1524 }
1524 } 1525 }
1525 1526
@@ -1610,8 +1611,6 @@ namespace OpenSim.Region.ScriptEngine.XMREngine {
1610 public class TokenTypeList : TokenType { 1611 public class TokenTypeList : TokenType {
1611 private static readonly FieldInfo iarListsFieldInfo = typeof (XMRInstArrays).GetField ("iarLists"); 1612 private static readonly FieldInfo iarListsFieldInfo = typeof (XMRInstArrays).GetField ("iarLists");
1612 private static readonly ConstructorInfo htListCtor = typeof (HeapTrackerList).GetConstructor (new Type [] { typeof (XMRInstAbstract) }); 1613 private static readonly ConstructorInfo htListCtor = typeof (HeapTrackerList).GetConstructor (new Type [] { typeof (XMRInstAbstract) });
1613 private static readonly MethodInfo htListPopMeth = typeof (HeapTrackerList).GetMethod ("Pop", new Type[] { typeof (LSL_List) });
1614 private static readonly MethodInfo htListPushMeth = typeof (HeapTrackerList).GetMethod ("Push", new Type[0]);
1615 1614
1616 public TokenTypeList (TokenErrorMessage emsg, string file, int line, int posn) : base (emsg, file, line, posn) { } 1615 public TokenTypeList (TokenErrorMessage emsg, string file, int line, int posn) : base (emsg, file, line, posn) { }
1617 public TokenTypeList (Token original) : base (original) { } 1616 public TokenTypeList (Token original) : base (original) { }
@@ -1624,14 +1623,12 @@ namespace OpenSim.Region.ScriptEngine.XMREngine {
1624 } 1623 }
1625 public override Type ToHeapTrackerType () { return typeof (HeapTrackerList); } 1624 public override Type ToHeapTrackerType () { return typeof (HeapTrackerList); }
1626 public override ConstructorInfo GetHeapTrackerCtor () { return htListCtor; } 1625 public override ConstructorInfo GetHeapTrackerCtor () { return htListCtor; }
1627 public override MethodInfo GetHeapTrackerPopMeth () { return htListPopMeth; } 1626 public override void CallHeapTrackerPopMeth (Token errorAt, ScriptMyILGen ilGen) { HeapTrackerList.GenPop(errorAt, ilGen); }
1628 public override MethodInfo GetHeapTrackerPushMeth () { return htListPushMeth; } 1627 public override void CallHeapTrackerPushMeth (Token errorAt, ScriptMyILGen ilGen) { HeapTrackerList.GenPush(errorAt, ilGen); }
1629 } 1628 }
1630 public class TokenTypeObject : TokenType { 1629 public class TokenTypeObject : TokenType {
1631 private static readonly FieldInfo iarObjectsFieldInfo = typeof (XMRInstArrays).GetField ("iarObjects"); 1630 private static readonly FieldInfo iarObjectsFieldInfo = typeof (XMRInstArrays).GetField ("iarObjects");
1632 private static readonly ConstructorInfo htObjectCtor = typeof (HeapTrackerObject).GetConstructor (new Type [] { typeof (XMRInstAbstract) }); 1631 private static readonly ConstructorInfo htObjectCtor = typeof (HeapTrackerObject).GetConstructor (new Type [] { typeof (XMRInstAbstract) });
1633 private static readonly MethodInfo htObjectPopMeth = typeof (HeapTrackerObject).GetMethod ("Pop", new Type[] { typeof (object) });
1634 private static readonly MethodInfo htObjectPushMeth = typeof (HeapTrackerObject).GetMethod ("Push", new Type[0]);
1635 1632
1636 public TokenTypeObject (TokenErrorMessage emsg, string file, int line, int posn) : base (emsg, file, line, posn) { } 1633 public TokenTypeObject (TokenErrorMessage emsg, string file, int line, int posn) : base (emsg, file, line, posn) { }
1637 public TokenTypeObject (Token original) : base (original) { } 1634 public TokenTypeObject (Token original) : base (original) { }
@@ -1644,8 +1641,8 @@ namespace OpenSim.Region.ScriptEngine.XMREngine {
1644 } 1641 }
1645 public override Type ToHeapTrackerType () { return typeof (HeapTrackerObject); } 1642 public override Type ToHeapTrackerType () { return typeof (HeapTrackerObject); }
1646 public override ConstructorInfo GetHeapTrackerCtor () { return htObjectCtor; } 1643 public override ConstructorInfo GetHeapTrackerCtor () { return htObjectCtor; }
1647 public override MethodInfo GetHeapTrackerPopMeth () { return htObjectPopMeth; } 1644 public override void CallHeapTrackerPopMeth(Token errorAt, ScriptMyILGen ilGen) { HeapTrackerObject.GenPop (errorAt, ilGen); }
1648 public override MethodInfo GetHeapTrackerPushMeth () { return htObjectPushMeth; } 1645 public override void CallHeapTrackerPushMeth(Token errorAt, ScriptMyILGen ilGen) { HeapTrackerObject.GenPush(errorAt, ilGen); }
1649 } 1646 }
1650 public class TokenTypeRot : TokenType { 1647 public class TokenTypeRot : TokenType {
1651 private static readonly FieldInfo iarRotationsFieldInfo = typeof (XMRInstArrays).GetField ("iarRotations"); 1648 private static readonly FieldInfo iarRotationsFieldInfo = typeof (XMRInstArrays).GetField ("iarRotations");
@@ -1663,8 +1660,6 @@ namespace OpenSim.Region.ScriptEngine.XMREngine {
1663 public class TokenTypeStr : TokenType { 1660 public class TokenTypeStr : TokenType {
1664 private static readonly FieldInfo iarStringsFieldInfo = typeof (XMRInstArrays).GetField ("iarStrings"); 1661 private static readonly FieldInfo iarStringsFieldInfo = typeof (XMRInstArrays).GetField ("iarStrings");
1665 private static readonly ConstructorInfo htStringCtor = typeof (HeapTrackerString).GetConstructor (new Type [] { typeof (XMRInstAbstract) }); 1662 private static readonly ConstructorInfo htStringCtor = typeof (HeapTrackerString).GetConstructor (new Type [] { typeof (XMRInstAbstract) });
1666 private static readonly MethodInfo htStringPopMeth = typeof (HeapTrackerString).GetMethod ("Pop", new Type[] { typeof (string) });
1667 private static readonly MethodInfo htStringPushMeth = typeof (HeapTrackerString).GetMethod ("Push", new Type[0]);
1668 1663
1669 public TokenTypeStr (TokenErrorMessage emsg, string file, int line, int posn) : base (emsg, file, line, posn) { } 1664 public TokenTypeStr (TokenErrorMessage emsg, string file, int line, int posn) : base (emsg, file, line, posn) { }
1670 public TokenTypeStr (Token original) : base (original) { } 1665 public TokenTypeStr (Token original) : base (original) { }
@@ -1677,8 +1672,8 @@ namespace OpenSim.Region.ScriptEngine.XMREngine {
1677 } 1672 }
1678 public override Type ToHeapTrackerType () { return typeof (HeapTrackerString); } 1673 public override Type ToHeapTrackerType () { return typeof (HeapTrackerString); }
1679 public override ConstructorInfo GetHeapTrackerCtor () { return htStringCtor; } 1674 public override ConstructorInfo GetHeapTrackerCtor () { return htStringCtor; }
1680 public override MethodInfo GetHeapTrackerPopMeth () { return htStringPopMeth; } 1675 public override void CallHeapTrackerPopMeth(Token errorAt, ScriptMyILGen ilGen) { HeapTrackerString.GenPop(errorAt, ilGen); }
1681 public override MethodInfo GetHeapTrackerPushMeth () { return htStringPushMeth; } 1676 public override void CallHeapTrackerPushMeth (Token errorAt, ScriptMyILGen ilGen) { HeapTrackerString.GenPush(errorAt, ilGen); }
1682 } 1677 }
1683 public class TokenTypeUndef : TokenType { // for the 'undef' constant, ie, null object pointer 1678 public class TokenTypeUndef : TokenType { // for the 'undef' constant, ie, null object pointer
1684 public TokenTypeUndef (TokenErrorMessage emsg, string file, int line, int posn) : base (emsg, file, line, posn) { } 1679 public TokenTypeUndef (TokenErrorMessage emsg, string file, int line, int posn) : base (emsg, file, line, posn) { }