static byte[] ForgeTransaction(TransactionContent operation) { var res = ForgeNat(OperationTags[operation.Kind]); res = res.Concat(ForgeSource(operation.Source)); res = res.Concat(ForgeNat(operation.Fee)); res = res.Concat(ForgeNat(operation.Counter)); res = res.Concat(ForgeNat(operation.GasLimit)); res = res.Concat(ForgeNat(operation.StorageLimit)); res = res.Concat(ForgeNat(operation.Amount)); res = res.Concat(ForgeAddress(operation.Destination)); if (operation.Parameters != null) { res = res.Concat(ForgeBool(true)); res = res.Concat(ForgeEntrypoint(operation.Parameters.Entrypoint)); // Console.WriteLine($"Res with entrypoint {Hex.Convert(res)}"); res = res.Concat(ForgeArray(ForgeMicheline(operation.Parameters.Value).ToArray())); } else { res = res.Concat(ForgeBool(false)); } return(res); }
static byte[] ForgeTransaction(TransactionContent operation) { return(Bytes.Concat( ForgeMicheNat((int)OperationTag.Transaction), ForgeTzAddress(operation.Source), ForgeMicheNat(operation.Fee), ForgeMicheNat(operation.Counter), ForgeMicheNat(operation.GasLimit), ForgeMicheNat(operation.StorageLimit), ForgeMicheNat(operation.Amount), ForgeAddress(operation.Destination), ForgeParameters(operation.Parameters))); }