public ScriptLCS GetScript(byte[] source, ref int cursor)
        {
            var retVal = new ScriptLCS();

            retVal.Code = source.LCSerialization <byte[]>(ref cursor);
            retVal.TransactionArguments =
                source.LCSerialization <List <TransactionArgumentLCS> >(ref cursor);

            return(retVal);
        }
        public static TransactionPayloadLCS FromScript(PayloadLCS payloadLCS)
        {
            var script = new ScriptLCS();

            script.Code    = payloadLCS.Code;
            script.Modules = payloadLCS.Modules;
            script.TransactionArguments = payloadLCS.TransactionArguments;
            return(new TransactionPayloadLCS
            {
                PayloadType = TransactionPayloadType.Script,
                Script = script
            });
        }
        public byte[] ScriptToByte(ScriptLCS source)
        {
            var result = ByteArrayToByte(source.Code);
            var argLen = U32ToByte((uint)source.TransactionArguments.Count);

            result = result.Concat(argLen).ToArray();
            foreach (var arg in source.TransactionArguments)
            {
                var argData = LCSCore.LCSDeserialization(arg);
                result = result.Concat(argData).ToArray();
            }

            return(result);
        }
 public byte[] ScriptToByte(ScriptLCS source)
 {
     throw new NotImplementedException();
 }