X-Git-Url: https://git.novaco.in/?a=blobdiff_plain;f=Novacoin%2FCScript.cs;h=95ca17a88e5dc7898e8d896170bf94cb10b74908;hb=0fe762d6eee8a8a23033f813217c1675a34f2d6a;hp=8757bb74ae445273e62b947a04a3ff91e419cb5a;hpb=6c6e3b0c68e764ea520dde48d5e44c757f1dabbb;p=NovacoinLibrary.git diff --git a/Novacoin/CScript.cs b/Novacoin/CScript.cs index 8757bb7..95ca17a 100644 --- a/Novacoin/CScript.cs +++ b/Novacoin/CScript.cs @@ -52,9 +52,9 @@ namespace Novacoin /// Return a new instance of ByteQueue object for current code bytes /// /// - public ByteQueue GetByteQueue() + public InstructionQueue GetInstructionQueue() { - return new ByteQueue(codeBytes); + return new InstructionQueue(ref codeBytes); } /// @@ -73,10 +73,10 @@ namespace Novacoin /// New items are added in this format: /// hash_length_byte hash_bytes /// - /// Hash160 instance - public void AddHash(Hash160 hash) + /// uint160 instance + public void AddHash(uint160 hash) { - codeBytes.Add((byte)hash.hashSize); + codeBytes.Add((byte)hash.Size); codeBytes.AddRange((byte[])hash); } @@ -85,10 +85,10 @@ namespace Novacoin /// New items are added in this format: /// hash_length_byte hash_bytes /// - /// Hash256 instance - public void AddHash(Hash256 hash) + /// uint256 instance + public void AddHash(uint256 hash) { - codeBytes.Add((byte)hash.hashSize); + codeBytes.Add((byte)hash.Size); codeBytes.AddRange((byte[])hash); } @@ -157,7 +157,7 @@ namespace Novacoin } var count = 0; - var bq1 = new ByteQueue(codeBytes); + var bq1 = new InstructionQueue(ref codeBytes); byte[] pushData; instruction opcode; @@ -203,7 +203,7 @@ namespace Novacoin var count = 0; var newScript = new CScript(); - var bq1 = new ByteQueue(codeBytes); + var bq1 = new InstructionQueue(ref codeBytes); while (ScriptCode.GetOp(ref bq1, out opcode, out pushData)) { @@ -239,7 +239,7 @@ namespace Novacoin { get { - var wCodeBytes = new ByteQueue(codeBytes); + var wCodeBytes = new InstructionQueue(ref codeBytes); instruction opcode; // Current instruction byte[] pushArgs; // OP_PUSHDATAn argument @@ -265,7 +265,7 @@ namespace Novacoin { get { - var wCodeBytes = new ByteQueue(codeBytes); + var wCodeBytes = new InstructionQueue(ref codeBytes); byte[] pushArgs; // OP_PUSHDATAn argument instruction opcode; // Current instruction @@ -354,7 +354,7 @@ namespace Novacoin /// Amount of sigops public uint GetSigOpCount(bool fAccurate) { - var wCodeBytes = new ByteQueue(codeBytes); + var wCodeBytes = new InstructionQueue(ref codeBytes); instruction opcode; // Current instruction byte[] pushArgs; // OP_PUSHDATAn argument @@ -401,7 +401,7 @@ namespace Novacoin // This is a pay-to-script-hash scriptPubKey; // get the last item that the scriptSig // pushes onto the stack: - ByteQueue wScriptSig = scriptSig.GetByteQueue(); + InstructionQueue wScriptSig = scriptSig.GetInstructionQueue(); int nScriptSigSize = scriptSig.Size; instruction opcode; // Current instruction @@ -520,7 +520,7 @@ namespace Novacoin public override string ToString() { var sb = new StringBuilder(); - var wCodeBytes = new ByteQueue(codeBytes); + var wCodeBytes = new InstructionQueue(ref codeBytes); instruction opcode; // Current instruction byte[] pushArgs; // OP_PUSHDATAn argument