radix-transactions 1.3.1

Various Radix transaction models and the manifest compiler/decompiler, from the Radix DLT project.
Documentation
## NOTE: This manifest is not intended to make cohesive sense
## - it is more intended to demonstrate various worktop-related commands 

# Withdraw XRD from account
CALL_METHOD Address("${account_address}") "withdraw" Address("${xrd_resource_address}") Decimal("5.0");

# Buy GUM with XRD
TAKE_FROM_WORKTOP Address("${xrd_resource_address}") Decimal("2.0") Bucket("xrd");
CALL_METHOD Address("${component_address}") "buy_gumball" Bucket("xrd");
ASSERT_WORKTOP_CONTAINS_ANY Address("${gumball_resource_address}");
ASSERT_WORKTOP_CONTAINS Address("${gumball_resource_address}") Decimal("3.0");

# Create a proof from bucket, clone it and drop both
TAKE_ALL_FROM_WORKTOP Address("${xrd_resource_address}") Bucket("some_xrd");

# Return a bucket to worktop
RETURN_TO_WORKTOP Bucket("some_xrd");
TAKE_NON_FUNGIBLES_FROM_WORKTOP Address("${non_fungible_resource_address}") Array<NonFungibleLocalId>(NonFungibleLocalId("#1#")) Bucket("nfts");

# Move all resources in worktop to account
CALL_METHOD Address("${account_address}") "deposit_batch" Expression("ENTIRE_WORKTOP");