stellar-base 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.gitignore +14 -0
- data/.travis.yml +15 -0
- data/.yardopts +8 -0
- data/Gemfile +15 -0
- data/Guardfile +5 -0
- data/LICENSE.txt +202 -0
- data/README.md +79 -0
- data/Rakefile +6 -0
- data/examples/low_level_transaction_post.rb +53 -0
- data/examples/mid_level_transaction_post.rb +34 -0
- data/examples/non_native_payment.rb +60 -0
- data/generated/stellar/account_entry.rb +37 -0
- data/generated/stellar/account_flags.rb +20 -0
- data/generated/stellar/account_merge_result.rb +25 -0
- data/generated/stellar/account_merge_result_code.rb +30 -0
- data/generated/stellar/allow_trust_op/currency.rb +28 -0
- data/generated/stellar/allow_trust_op.rb +35 -0
- data/generated/stellar/allow_trust_result.rb +25 -0
- data/generated/stellar/allow_trust_result_code.rb +28 -0
- data/generated/stellar/bucket_entry.rb +28 -0
- data/generated/stellar/bucket_entry_type.rb +22 -0
- data/generated/stellar/change_trust_op.rb +22 -0
- data/generated/stellar/change_trust_result.rb +25 -0
- data/generated/stellar/change_trust_result_code.rb +28 -0
- data/generated/stellar/claim_offer_atom.rb +29 -0
- data/generated/stellar/create_offer_effect.rb +24 -0
- data/generated/stellar/create_offer_op.rb +28 -0
- data/generated/stellar/create_offer_result.rb +26 -0
- data/generated/stellar/create_offer_result_code.rb +45 -0
- data/generated/stellar/create_offer_success_result/offer.rb +30 -0
- data/generated/stellar/create_offer_success_result.rb +34 -0
- data/generated/stellar/currency.rb +29 -0
- data/generated/stellar/currency_type.rb +22 -0
- data/generated/stellar/decorated_signature.rb +20 -0
- data/generated/stellar/dont_have.rb +20 -0
- data/generated/stellar/error.rb +20 -0
- data/generated/stellar/hello.rb +24 -0
- data/generated/stellar/inflation_payout.rb +20 -0
- data/generated/stellar/inflation_result.rb +26 -0
- data/generated/stellar/inflation_result_code.rb +24 -0
- data/generated/stellar/iso_currency_issuer.rb +20 -0
- data/generated/stellar/ledger_entry.rb +33 -0
- data/generated/stellar/ledger_entry_type.rb +24 -0
- data/generated/stellar/ledger_header.rb +45 -0
- data/generated/stellar/ledger_header_history_entry.rb +20 -0
- data/generated/stellar/ledger_key/account.rb +20 -0
- data/generated/stellar/ledger_key/offer.rb +22 -0
- data/generated/stellar/ledger_key/trust_line.rb +22 -0
- data/generated/stellar/ledger_key.rb +50 -0
- data/generated/stellar/message_type.rb +45 -0
- data/generated/stellar/offer_entry.rb +34 -0
- data/generated/stellar/operation/body.rb +49 -0
- data/generated/stellar/operation.rb +45 -0
- data/generated/stellar/operation_result/tr.rb +49 -0
- data/generated/stellar/operation_result.rb +47 -0
- data/generated/stellar/operation_result_code.rb +25 -0
- data/generated/stellar/operation_type.rb +32 -0
- data/generated/stellar/payment_op.rb +35 -0
- data/generated/stellar/payment_result.rb +29 -0
- data/generated/stellar/payment_result_code.rb +41 -0
- data/generated/stellar/payment_success_multi_result.rb +20 -0
- data/generated/stellar/peer_address.rb +22 -0
- data/generated/stellar/price.rb +20 -0
- data/generated/stellar/scp_ballot.rb +20 -0
- data/generated/stellar/scp_envelope.rb +22 -0
- data/generated/stellar/scp_quorum_set.rb +20 -0
- data/generated/stellar/scp_statement/pledges/prepare.rb +24 -0
- data/generated/stellar/scp_statement/pledges.rb +40 -0
- data/generated/stellar/scp_statement.rb +42 -0
- data/generated/stellar/scp_statement_type.rb +26 -0
- data/generated/stellar/set_options_op.rb +31 -0
- data/generated/stellar/set_options_result.rb +25 -0
- data/generated/stellar/set_options_result_code.rb +28 -0
- data/generated/stellar/signer.rb +20 -0
- data/generated/stellar/simple_payment_result.rb +22 -0
- data/generated/stellar/stellar_ballot.rb +22 -0
- data/generated/stellar/stellar_ballot_value.rb +22 -0
- data/generated/stellar/stellar_message.rb +66 -0
- data/generated/stellar/transaction.rb +37 -0
- data/generated/stellar/transaction_envelope.rb +20 -0
- data/generated/stellar/transaction_history_entry.rb +20 -0
- data/generated/stellar/transaction_history_result_entry.rb +20 -0
- data/generated/stellar/transaction_meta.rb +18 -0
- data/generated/stellar/transaction_result/result.rb +30 -0
- data/generated/stellar/transaction_result.rb +33 -0
- data/generated/stellar/transaction_result_code.rb +46 -0
- data/generated/stellar/transaction_result_pair.rb +20 -0
- data/generated/stellar/transaction_result_set.rb +18 -0
- data/generated/stellar/transaction_set.rb +20 -0
- data/generated/stellar/trust_line_entry.rb +28 -0
- data/generated/stellar-base-generated.rb +160 -0
- data/lib/stellar/base/version.rb +5 -0
- data/lib/stellar/base.rb +1 -0
- data/lib/stellar/change_trust_op.rb +10 -0
- data/lib/stellar/currency.rb +28 -0
- data/lib/stellar/key_pair.rb +94 -0
- data/lib/stellar/payment_op.rb +38 -0
- data/lib/stellar/transaction.rb +72 -0
- data/lib/stellar/transaction_envelope.rb +32 -0
- data/lib/stellar/util/base58.rb +127 -0
- data/lib/stellar-base.rb +23 -0
- data/ruby-stellar-base.gemspec +34 -0
- data/spec/lib/stellar/key_pair_spec.rb +199 -0
- data/spec/lib/stellar/transaction_envelope_spec.rb +93 -0
- data/spec/lib/stellar/transaction_spec.rb +43 -0
- data/spec/lib/stellar/util/base58_spec.rb +74 -0
- data/spec/spec_helper.rb +16 -0
- data/spec/support/matchers/be_base58_check.rb +9 -0
- data/spec/support/matchers/eq_bytes.rb +5 -0
- data/spec/support/matchers/have_length.rb +5 -0
- data/tasks/rspec.rake +6 -0
- data/tasks/travis.rake +9 -0
- data/tasks/xdr.rake +48 -0
- data/xdr/SCPXDR.x +61 -0
- data/xdr/Stellar-ledger-entries.x +105 -0
- data/xdr/Stellar-ledger.x +117 -0
- data/xdr/Stellar-overlay.x +100 -0
- data/xdr/Stellar-transaction.x +497 -0
- data/xdr/Stellar-types.x +53 -0
- data/xdr/StellarXDR.x +11 -0
- metadata +342 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct PaymentSuccessMultiResult
|
|
9
|
+
# {
|
|
10
|
+
# ClaimOfferAtom offers<>;
|
|
11
|
+
# SimplePaymentResult last;
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class PaymentSuccessMultiResult < XDR::Struct
|
|
17
|
+
attribute :offers, XDR::VarArray[ClaimOfferAtom]
|
|
18
|
+
attribute :last, SimplePaymentResult
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct PeerAddress
|
|
9
|
+
# {
|
|
10
|
+
# opaque ip[4];
|
|
11
|
+
# uint32 port;
|
|
12
|
+
# uint32 numFailures;
|
|
13
|
+
# };
|
|
14
|
+
#
|
|
15
|
+
# ===========================================================================
|
|
16
|
+
module Stellar
|
|
17
|
+
class PeerAddress < XDR::Struct
|
|
18
|
+
attribute :ip, XDR::Opaque[4]
|
|
19
|
+
attribute :port, Uint32
|
|
20
|
+
attribute :num_failures, Uint32
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct Price
|
|
9
|
+
# {
|
|
10
|
+
# int32 n; // numerator
|
|
11
|
+
# int32 d; // denominator
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class Price < XDR::Struct
|
|
17
|
+
attribute :n, Int32
|
|
18
|
+
attribute :d, Int32
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SCPBallot
|
|
9
|
+
# {
|
|
10
|
+
# uint32 counter; // n
|
|
11
|
+
# Value value; // x
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class SCPBallot < XDR::Struct
|
|
17
|
+
attribute :counter, Uint32
|
|
18
|
+
attribute :value, Value
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SCPEnvelope
|
|
9
|
+
# {
|
|
10
|
+
# uint256 nodeID; // v
|
|
11
|
+
# SCPStatement statement;
|
|
12
|
+
# Signature signature;
|
|
13
|
+
# };
|
|
14
|
+
#
|
|
15
|
+
# ===========================================================================
|
|
16
|
+
module Stellar
|
|
17
|
+
class SCPEnvelope < XDR::Struct
|
|
18
|
+
attribute :node_id, Uint256
|
|
19
|
+
attribute :statement, SCPStatement
|
|
20
|
+
attribute :signature, Signature
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SCPQuorumSet
|
|
9
|
+
# {
|
|
10
|
+
# uint32 threshold;
|
|
11
|
+
# Hash validators<>;
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class SCPQuorumSet < XDR::Struct
|
|
17
|
+
attribute :threshold, Uint32
|
|
18
|
+
attribute :validators, XDR::VarArray[Hash]
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct
|
|
9
|
+
# {
|
|
10
|
+
# SCPBallot excepted<>; // B_c
|
|
11
|
+
# SCPBallot* prepared; // p
|
|
12
|
+
# }
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class SCPStatement
|
|
17
|
+
class Pledges
|
|
18
|
+
class Prepare < XDR::Struct
|
|
19
|
+
attribute :excepted, XDR::VarArray[SCPBallot]
|
|
20
|
+
attribute :prepared, XDR::Option[SCPBallot]
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
end
|
|
24
|
+
end
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# union switch (SCPStatementType type)
|
|
9
|
+
# {
|
|
10
|
+
# case PREPARING:
|
|
11
|
+
# struct
|
|
12
|
+
# {
|
|
13
|
+
# SCPBallot excepted<>; // B_c
|
|
14
|
+
# SCPBallot* prepared; // p
|
|
15
|
+
# } prepare;
|
|
16
|
+
# case PREPARED:
|
|
17
|
+
# case COMMITTING:
|
|
18
|
+
# case COMMITTED:
|
|
19
|
+
# void;
|
|
20
|
+
# }
|
|
21
|
+
#
|
|
22
|
+
# ===========================================================================
|
|
23
|
+
module Stellar
|
|
24
|
+
class SCPStatement
|
|
25
|
+
class Pledges < XDR::Union
|
|
26
|
+
include XDR::Namespace
|
|
27
|
+
|
|
28
|
+
autoload :Prepare
|
|
29
|
+
|
|
30
|
+
switch_on SCPStatementType, :type
|
|
31
|
+
|
|
32
|
+
switch :preparing, :prepare
|
|
33
|
+
switch :prepared
|
|
34
|
+
switch :committing
|
|
35
|
+
switch :committed
|
|
36
|
+
|
|
37
|
+
attribute :prepare, Prepare
|
|
38
|
+
end
|
|
39
|
+
end
|
|
40
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SCPStatement
|
|
9
|
+
# {
|
|
10
|
+
# uint64 slotIndex; // i
|
|
11
|
+
# SCPBallot ballot; // b
|
|
12
|
+
# Hash quorumSetHash; // D
|
|
13
|
+
#
|
|
14
|
+
# union switch (SCPStatementType type)
|
|
15
|
+
# {
|
|
16
|
+
# case PREPARING:
|
|
17
|
+
# struct
|
|
18
|
+
# {
|
|
19
|
+
# SCPBallot excepted<>; // B_c
|
|
20
|
+
# SCPBallot* prepared; // p
|
|
21
|
+
# } prepare;
|
|
22
|
+
# case PREPARED:
|
|
23
|
+
# case COMMITTING:
|
|
24
|
+
# case COMMITTED:
|
|
25
|
+
# void;
|
|
26
|
+
# }
|
|
27
|
+
# pledges;
|
|
28
|
+
# };
|
|
29
|
+
#
|
|
30
|
+
# ===========================================================================
|
|
31
|
+
module Stellar
|
|
32
|
+
class SCPStatement < XDR::Struct
|
|
33
|
+
include XDR::Namespace
|
|
34
|
+
|
|
35
|
+
autoload :Pledges
|
|
36
|
+
|
|
37
|
+
attribute :slot_index, Uint64
|
|
38
|
+
attribute :ballot, SCPBallot
|
|
39
|
+
attribute :quorum_set_hash, Hash
|
|
40
|
+
attribute :pledges, Pledges
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# enum SCPStatementType
|
|
9
|
+
# {
|
|
10
|
+
# PREPARING = 0,
|
|
11
|
+
# PREPARED = 1,
|
|
12
|
+
# COMMITTING = 2,
|
|
13
|
+
# COMMITTED = 3
|
|
14
|
+
# };
|
|
15
|
+
#
|
|
16
|
+
# ===========================================================================
|
|
17
|
+
module Stellar
|
|
18
|
+
class SCPStatementType < XDR::Enum
|
|
19
|
+
member :preparing, 0
|
|
20
|
+
member :prepared, 1
|
|
21
|
+
member :committing, 2
|
|
22
|
+
member :committed, 3
|
|
23
|
+
|
|
24
|
+
seal
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SetOptionsOp
|
|
9
|
+
# {
|
|
10
|
+
# AccountID* inflationDest; // sets the inflation destination
|
|
11
|
+
#
|
|
12
|
+
# uint32* clearFlags; // which flags to clear
|
|
13
|
+
# uint32* setFlags; // which flags to set
|
|
14
|
+
#
|
|
15
|
+
# Thresholds* thresholds; // update the thresholds for the account
|
|
16
|
+
#
|
|
17
|
+
# // Add, update or remove a signer for the account
|
|
18
|
+
# // signer is deleted if the weight is 0
|
|
19
|
+
# Signer* signer;
|
|
20
|
+
# };
|
|
21
|
+
#
|
|
22
|
+
# ===========================================================================
|
|
23
|
+
module Stellar
|
|
24
|
+
class SetOptionsOp < XDR::Struct
|
|
25
|
+
attribute :inflation_dest, XDR::Option[AccountID]
|
|
26
|
+
attribute :clear_flags, XDR::Option[Uint32]
|
|
27
|
+
attribute :set_flags, XDR::Option[Uint32]
|
|
28
|
+
attribute :thresholds, XDR::Option[Thresholds]
|
|
29
|
+
attribute :signer, XDR::Option[Signer]
|
|
30
|
+
end
|
|
31
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# union SetOptionsResult switch (SetOptionsResultCode code)
|
|
9
|
+
# {
|
|
10
|
+
# case SET_OPTIONS_SUCCESS:
|
|
11
|
+
# void;
|
|
12
|
+
# default:
|
|
13
|
+
# void;
|
|
14
|
+
# };
|
|
15
|
+
#
|
|
16
|
+
# ===========================================================================
|
|
17
|
+
module Stellar
|
|
18
|
+
class SetOptionsResult < XDR::Union
|
|
19
|
+
switch_on SetOptionsResultCode, :code
|
|
20
|
+
|
|
21
|
+
switch :set_options_success
|
|
22
|
+
switch :default
|
|
23
|
+
|
|
24
|
+
end
|
|
25
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# enum SetOptionsResultCode
|
|
9
|
+
# {
|
|
10
|
+
# // codes considered as "success" for the operation
|
|
11
|
+
# SET_OPTIONS_SUCCESS = 0,
|
|
12
|
+
# // codes considered as "failure" for the operation
|
|
13
|
+
# SET_OPTIONS_LOW_RESERVE = 1, // not enough funds to add a signer
|
|
14
|
+
# SET_OPTIONS_TOO_MANY_SIGNERS = 2, // max number of signers already reached
|
|
15
|
+
# SET_OPTIONS_BAD_FLAGS = 3 // invalid combination of clear/set flags
|
|
16
|
+
# };
|
|
17
|
+
#
|
|
18
|
+
# ===========================================================================
|
|
19
|
+
module Stellar
|
|
20
|
+
class SetOptionsResultCode < XDR::Enum
|
|
21
|
+
member :set_options_success, 0
|
|
22
|
+
member :set_options_low_reserve, 1
|
|
23
|
+
member :set_options_too_many_signers, 2
|
|
24
|
+
member :set_options_bad_flags, 3
|
|
25
|
+
|
|
26
|
+
seal
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct Signer
|
|
9
|
+
# {
|
|
10
|
+
# uint256 pubKey;
|
|
11
|
+
# uint32 weight; // really only need 1byte
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class Signer < XDR::Struct
|
|
17
|
+
attribute :pub_key, Uint256
|
|
18
|
+
attribute :weight, Uint32
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SimplePaymentResult
|
|
9
|
+
# {
|
|
10
|
+
# AccountID destination;
|
|
11
|
+
# Currency currency;
|
|
12
|
+
# int64 amount;
|
|
13
|
+
# };
|
|
14
|
+
#
|
|
15
|
+
# ===========================================================================
|
|
16
|
+
module Stellar
|
|
17
|
+
class SimplePaymentResult < XDR::Struct
|
|
18
|
+
attribute :destination, AccountID
|
|
19
|
+
attribute :currency, Currency
|
|
20
|
+
attribute :amount, Int64
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct StellarBallot
|
|
9
|
+
# {
|
|
10
|
+
# uint256 nodeID;
|
|
11
|
+
# Signature signature;
|
|
12
|
+
# StellarBallotValue value;
|
|
13
|
+
# };
|
|
14
|
+
#
|
|
15
|
+
# ===========================================================================
|
|
16
|
+
module Stellar
|
|
17
|
+
class StellarBallot < XDR::Struct
|
|
18
|
+
attribute :node_id, Uint256
|
|
19
|
+
attribute :signature, Signature
|
|
20
|
+
attribute :value, StellarBallotValue
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct StellarBallotValue
|
|
9
|
+
# {
|
|
10
|
+
# Hash txSetHash;
|
|
11
|
+
# uint64 closeTime;
|
|
12
|
+
# uint32 baseFee;
|
|
13
|
+
# };
|
|
14
|
+
#
|
|
15
|
+
# ===========================================================================
|
|
16
|
+
module Stellar
|
|
17
|
+
class StellarBallotValue < XDR::Struct
|
|
18
|
+
attribute :tx_set_hash, Hash
|
|
19
|
+
attribute :close_time, Uint64
|
|
20
|
+
attribute :base_fee, Uint32
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# union StellarMessage switch (MessageType type)
|
|
9
|
+
# {
|
|
10
|
+
# case ERROR_MSG:
|
|
11
|
+
# Error error;
|
|
12
|
+
# case HELLO:
|
|
13
|
+
# Hello hello;
|
|
14
|
+
# case DONT_HAVE:
|
|
15
|
+
# DontHave dontHave;
|
|
16
|
+
# case GET_PEERS:
|
|
17
|
+
# void;
|
|
18
|
+
# case PEERS:
|
|
19
|
+
# PeerAddress peers<>;
|
|
20
|
+
#
|
|
21
|
+
# case GET_TX_SET:
|
|
22
|
+
# uint256 txSetHash;
|
|
23
|
+
# case TX_SET:
|
|
24
|
+
# TransactionSet txSet;
|
|
25
|
+
#
|
|
26
|
+
# case TRANSACTION:
|
|
27
|
+
# TransactionEnvelope transaction;
|
|
28
|
+
#
|
|
29
|
+
# // SCP
|
|
30
|
+
# case GET_SCP_QUORUMSET:
|
|
31
|
+
# uint256 qSetHash;
|
|
32
|
+
# case SCP_QUORUMSET:
|
|
33
|
+
# SCPQuorumSet qSet;
|
|
34
|
+
# case SCP_MESSAGE:
|
|
35
|
+
# SCPEnvelope envelope;
|
|
36
|
+
# };
|
|
37
|
+
#
|
|
38
|
+
# ===========================================================================
|
|
39
|
+
module Stellar
|
|
40
|
+
class StellarMessage < XDR::Union
|
|
41
|
+
switch_on MessageType, :type
|
|
42
|
+
|
|
43
|
+
switch :error_msg, :error
|
|
44
|
+
switch :hello, :hello
|
|
45
|
+
switch :dont_have, :dont_have
|
|
46
|
+
switch :get_peers
|
|
47
|
+
switch :peers, :peers
|
|
48
|
+
switch :get_tx_set, :tx_set_hash
|
|
49
|
+
switch :tx_set, :tx_set
|
|
50
|
+
switch :transaction, :transaction
|
|
51
|
+
switch :get_scp_quorumset, :q_set_hash
|
|
52
|
+
switch :scp_quorumset, :q_set
|
|
53
|
+
switch :scp_message, :envelope
|
|
54
|
+
|
|
55
|
+
attribute :error, Error
|
|
56
|
+
attribute :hello, Hello
|
|
57
|
+
attribute :dont_have, DontHave
|
|
58
|
+
attribute :peers, XDR::VarArray[PeerAddress]
|
|
59
|
+
attribute :tx_set_hash, Uint256
|
|
60
|
+
attribute :tx_set, TransactionSet
|
|
61
|
+
attribute :transaction, TransactionEnvelope
|
|
62
|
+
attribute :q_set_hash, Uint256
|
|
63
|
+
attribute :q_set, SCPQuorumSet
|
|
64
|
+
attribute :envelope, SCPEnvelope
|
|
65
|
+
end
|
|
66
|
+
end
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct Transaction
|
|
9
|
+
# {
|
|
10
|
+
# // account used to run the transaction
|
|
11
|
+
# AccountID sourceAccount;
|
|
12
|
+
#
|
|
13
|
+
# // maximum fee this transaction can collect
|
|
14
|
+
# // the transaction is aborted if the fee is higher
|
|
15
|
+
# int32 maxFee;
|
|
16
|
+
#
|
|
17
|
+
# // sequence number to consume in the account
|
|
18
|
+
# SequenceNumber seqNum;
|
|
19
|
+
#
|
|
20
|
+
# // validity range (inclusive) for the ledger sequence number
|
|
21
|
+
# uint32 minLedger;
|
|
22
|
+
# uint32 maxLedger;
|
|
23
|
+
#
|
|
24
|
+
# Operation operations<100>;
|
|
25
|
+
# };
|
|
26
|
+
#
|
|
27
|
+
# ===========================================================================
|
|
28
|
+
module Stellar
|
|
29
|
+
class Transaction < XDR::Struct
|
|
30
|
+
attribute :source_account, AccountID
|
|
31
|
+
attribute :max_fee, Int32
|
|
32
|
+
attribute :seq_num, SequenceNumber
|
|
33
|
+
attribute :min_ledger, Uint32
|
|
34
|
+
attribute :max_ledger, Uint32
|
|
35
|
+
attribute :operations, XDR::VarArray[Operation, 100]
|
|
36
|
+
end
|
|
37
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct TransactionEnvelope
|
|
9
|
+
# {
|
|
10
|
+
# Transaction tx;
|
|
11
|
+
# DecoratedSignature signatures<20>;
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class TransactionEnvelope < XDR::Struct
|
|
17
|
+
attribute :tx, Transaction
|
|
18
|
+
attribute :signatures, XDR::VarArray[DecoratedSignature, 20]
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct TransactionHistoryEntry
|
|
9
|
+
# {
|
|
10
|
+
# uint32 ledgerSeq;
|
|
11
|
+
# TransactionSet txSet;
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class TransactionHistoryEntry < XDR::Struct
|
|
17
|
+
attribute :ledger_seq, Uint32
|
|
18
|
+
attribute :tx_set, TransactionSet
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct TransactionHistoryResultEntry
|
|
9
|
+
# {
|
|
10
|
+
# uint32 ledgerSeq;
|
|
11
|
+
# TransactionResultSet txResultSet;
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class TransactionHistoryResultEntry < XDR::Struct
|
|
17
|
+
attribute :ledger_seq, Uint32
|
|
18
|
+
attribute :tx_result_set, TransactionResultSet
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct TransactionMeta
|
|
9
|
+
# {
|
|
10
|
+
# BucketEntry entries<>;
|
|
11
|
+
# };
|
|
12
|
+
#
|
|
13
|
+
# ===========================================================================
|
|
14
|
+
module Stellar
|
|
15
|
+
class TransactionMeta < XDR::Struct
|
|
16
|
+
attribute :entries, XDR::VarArray[BucketEntry]
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Automatically generated on 2015-04-07T10:52:07-07:00
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# union switch (TransactionResultCode code)
|
|
9
|
+
# {
|
|
10
|
+
# case txSUCCESS:
|
|
11
|
+
# case txFAILED:
|
|
12
|
+
# OperationResult results<>;
|
|
13
|
+
# default:
|
|
14
|
+
# void;
|
|
15
|
+
# }
|
|
16
|
+
#
|
|
17
|
+
# ===========================================================================
|
|
18
|
+
module Stellar
|
|
19
|
+
class TransactionResult
|
|
20
|
+
class Result < XDR::Union
|
|
21
|
+
switch_on TransactionResultCode, :code
|
|
22
|
+
|
|
23
|
+
switch :tx_success, :results
|
|
24
|
+
switch :tx_failed, :results
|
|
25
|
+
switch :default
|
|
26
|
+
|
|
27
|
+
attribute :results, XDR::VarArray[OperationResult]
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|