diff options
Diffstat (limited to '')
-rw-r--r-- | OpenSim/Region/ScriptEngine/XMREngine/MMRScriptTokenize.cs | 29 |
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) { } |