open-core 0.3.0
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 +15 -0
- data/.travis.yml +15 -0
- data/.yardopts +8 -0
- data/CONTRIBUTING.md +48 -0
- data/Gemfile +15 -0
- data/Guardfile +5 -0
- data/LICENSE.txt +202 -0
- data/README.md +83 -0
- data/Rakefile +4 -0
- data/examples/create_account.rb +26 -0
- data/examples/low_level_transaction_post.rb +46 -0
- data/examples/mid_level_transaction_post.rb +33 -0
- data/examples/non_native_payment.rb +60 -0
- data/examples/offer.rb +75 -0
- data/examples/transaction_merge.rb +23 -0
- data/generated/stellar-base-generated.rb +134 -0
- data/generated/stellar/account_entry.rb +53 -0
- data/generated/stellar/account_entry/ext.rb +24 -0
- data/generated/stellar/account_flags.rb +27 -0
- data/generated/stellar/account_merge_result.rb +26 -0
- data/generated/stellar/account_merge_result_code.rb +30 -0
- data/generated/stellar/allow_trust_op.rb +38 -0
- data/generated/stellar/allow_trust_op/asset.rb +33 -0
- data/generated/stellar/allow_trust_result.rb +25 -0
- data/generated/stellar/allow_trust_result_code.rb +31 -0
- data/generated/stellar/asset.rb +47 -0
- data/generated/stellar/asset/alpha_num12.rb +22 -0
- data/generated/stellar/asset/alpha_num4.rb +22 -0
- data/generated/stellar/asset_type.rb +24 -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 +30 -0
- data/generated/stellar/claim_offer_atom.rb +33 -0
- data/generated/stellar/create_account_op.rb +20 -0
- data/generated/stellar/create_account_result.rb +25 -0
- data/generated/stellar/create_account_result_code.rb +32 -0
- data/generated/stellar/create_passive_offer_op.rb +24 -0
- data/generated/stellar/crypto_key_type.rb +20 -0
- data/generated/stellar/decorated_signature.rb +20 -0
- data/generated/stellar/dont_have.rb +20 -0
- data/generated/stellar/envelope_type.rb +22 -0
- data/generated/stellar/error.rb +20 -0
- data/generated/stellar/hello.rb +26 -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/ledger_entry.rb +44 -0
- data/generated/stellar/ledger_entry/data.rb +33 -0
- data/generated/stellar/ledger_entry/ext.rb +24 -0
- data/generated/stellar/ledger_entry_change.rb +31 -0
- data/generated/stellar/ledger_entry_change_type.rb +24 -0
- data/generated/stellar/ledger_entry_type.rb +24 -0
- data/generated/stellar/ledger_header.rb +65 -0
- data/generated/stellar/ledger_header/ext.rb +24 -0
- data/generated/stellar/ledger_header_history_entry.rb +33 -0
- data/generated/stellar/ledger_header_history_entry/ext.rb +24 -0
- data/generated/stellar/ledger_key.rb +50 -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_upgrade.rb +27 -0
- data/generated/stellar/ledger_upgrade_type.rb +22 -0
- data/generated/stellar/manage_offer_effect.rb +24 -0
- data/generated/stellar/manage_offer_op.rb +28 -0
- data/generated/stellar/manage_offer_result.rb +26 -0
- data/generated/stellar/manage_offer_result_code.rb +48 -0
- data/generated/stellar/manage_offer_success_result.rb +34 -0
- data/generated/stellar/manage_offer_success_result/offer.rb +30 -0
- data/generated/stellar/memo.rb +38 -0
- data/generated/stellar/memo_type.rb +28 -0
- data/generated/stellar/message_type.rb +45 -0
- data/generated/stellar/offer_entry.rb +49 -0
- data/generated/stellar/offer_entry/ext.rb +24 -0
- data/generated/stellar/offer_entry_flags.rb +21 -0
- data/generated/stellar/operation.rb +51 -0
- data/generated/stellar/operation/body.rb +60 -0
- data/generated/stellar/operation_meta.rb +18 -0
- data/generated/stellar/operation_result.rb +53 -0
- data/generated/stellar/operation_result/tr.rb +61 -0
- data/generated/stellar/operation_result_code.rb +25 -0
- data/generated/stellar/operation_type.rb +38 -0
- data/generated/stellar/path_payment_op.rb +32 -0
- data/generated/stellar/path_payment_result.rb +34 -0
- data/generated/stellar/path_payment_result/success.rb +22 -0
- data/generated/stellar/path_payment_result_code.rb +45 -0
- data/generated/stellar/payment_op.rb +22 -0
- data/generated/stellar/payment_result.rb +25 -0
- data/generated/stellar/payment_result_code.rb +39 -0
- data/generated/stellar/peer_address.rb +22 -0
- data/generated/stellar/price.rb +20 -0
- data/generated/stellar/public_key.rb +23 -0
- data/generated/stellar/scp_ballot.rb +20 -0
- data/generated/stellar/scp_envelope.rb +20 -0
- data/generated/stellar/scp_nomination.rb +22 -0
- data/generated/stellar/scp_quorum_set.rb +22 -0
- data/generated/stellar/scp_statement.rb +59 -0
- data/generated/stellar/scp_statement/pledges.rb +64 -0
- data/generated/stellar/scp_statement/pledges/confirm.rb +28 -0
- data/generated/stellar/scp_statement/pledges/externalize.rb +28 -0
- data/generated/stellar/scp_statement/pledges/prepare.rb +32 -0
- data/generated/stellar/scp_statement_type.rb +26 -0
- data/generated/stellar/set_options_op.rb +41 -0
- data/generated/stellar/set_options_result.rb +25 -0
- data/generated/stellar/set_options_result_code.rb +38 -0
- data/generated/stellar/signer.rb +20 -0
- data/generated/stellar/simple_payment_result.rb +22 -0
- data/generated/stellar/stellar_message.rb +66 -0
- data/generated/stellar/stellar_value.rb +40 -0
- data/generated/stellar/stellar_value/ext.rb +24 -0
- data/generated/stellar/threshold_indexes.rb +26 -0
- data/generated/stellar/time_bounds.rb +20 -0
- data/generated/stellar/transaction.rb +50 -0
- data/generated/stellar/transaction/ext.rb +24 -0
- data/generated/stellar/transaction_envelope.rb +20 -0
- data/generated/stellar/transaction_history_entry.rb +33 -0
- data/generated/stellar/transaction_history_entry/ext.rb +24 -0
- data/generated/stellar/transaction_history_result_entry.rb +33 -0
- data/generated/stellar/transaction_history_result_entry/ext.rb +24 -0
- data/generated/stellar/transaction_meta.rb +31 -0
- data/generated/stellar/transaction_meta/v0.rb +22 -0
- data/generated/stellar/transaction_result.rb +43 -0
- data/generated/stellar/transaction_result/ext.rb +24 -0
- data/generated/stellar/transaction_result/result.rb +30 -0
- data/generated/stellar/transaction_result_code.rb +45 -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 +41 -0
- data/generated/stellar/trust_line_entry/ext.rb +24 -0
- data/generated/stellar/trust_line_flags.rb +21 -0
- data/lib/stellar-base.rb +32 -0
- data/lib/stellar/account_flags.rb +28 -0
- data/lib/stellar/asset.rb +69 -0
- data/lib/stellar/base.rb +1 -0
- data/lib/stellar/base/version.rb +5 -0
- data/lib/stellar/convert.rb +32 -0
- data/lib/stellar/key_pair.rb +112 -0
- data/lib/stellar/networks.rb +45 -0
- data/lib/stellar/operation.rb +304 -0
- data/lib/stellar/path_payment_result.rb +17 -0
- data/lib/stellar/price.rb +32 -0
- data/lib/stellar/thresholds.rb +39 -0
- data/lib/stellar/transaction.rb +170 -0
- data/lib/stellar/transaction_envelope.rb +32 -0
- data/lib/stellar/util/continued_fraction.rb +96 -0
- data/lib/stellar/util/strkey.rb +43 -0
- data/open-core.gemspec +37 -0
- data/spec/lib/stellar/account_flags_spec.rb +19 -0
- data/spec/lib/stellar/asset_spec.rb +45 -0
- data/spec/lib/stellar/convert_spec.rb +61 -0
- data/spec/lib/stellar/key_pair_spec.rb +238 -0
- data/spec/lib/stellar/networks_spec.rb +77 -0
- data/spec/lib/stellar/path_payment_result_spec.rb +95 -0
- data/spec/lib/stellar/price_spec.rb +34 -0
- data/spec/lib/stellar/thresholds_spec.rb +62 -0
- data/spec/lib/stellar/transaction_envelope_spec.rb +93 -0
- data/spec/lib/stellar/transaction_spec.rb +54 -0
- data/spec/lib/stellar/util/strkey_spec.rb +46 -0
- data/spec/spec_helper.rb +16 -0
- data/spec/support/matchers/be_strkey.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 +1 -0
- data/tasks/xdr.rake +50 -0
- data/xdr/Stellar-SCP.x +87 -0
- data/xdr/Stellar-ledger-entries.x +222 -0
- data/xdr/Stellar-ledger.x +231 -0
- data/xdr/Stellar-overlay.x +87 -0
- data/xdr/Stellar-transaction.x +670 -0
- data/xdr/Stellar-types.x +34 -0
- metadata +444 -0
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# union PublicKey switch (CryptoKeyType type)
|
|
9
|
+
# {
|
|
10
|
+
# case KEY_TYPE_ED25519:
|
|
11
|
+
# uint256 ed25519;
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class PublicKey < XDR::Union
|
|
17
|
+
switch_on CryptoKeyType, :type
|
|
18
|
+
|
|
19
|
+
switch :key_type_ed25519, :ed25519
|
|
20
|
+
|
|
21
|
+
attribute :ed25519, Uint256
|
|
22
|
+
end
|
|
23
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
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,20 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SCPEnvelope
|
|
9
|
+
# {
|
|
10
|
+
# SCPStatement statement;
|
|
11
|
+
# Signature signature;
|
|
12
|
+
# };
|
|
13
|
+
#
|
|
14
|
+
# ===========================================================================
|
|
15
|
+
module Stellar
|
|
16
|
+
class SCPEnvelope < XDR::Struct
|
|
17
|
+
attribute :statement, SCPStatement
|
|
18
|
+
attribute :signature, Signature
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SCPNomination
|
|
9
|
+
# {
|
|
10
|
+
# Hash quorumSetHash; // D
|
|
11
|
+
# Value votes<>; // X
|
|
12
|
+
# Value accepted<>; // Y
|
|
13
|
+
# };
|
|
14
|
+
#
|
|
15
|
+
# ===========================================================================
|
|
16
|
+
module Stellar
|
|
17
|
+
class SCPNomination < XDR::Struct
|
|
18
|
+
attribute :quorum_set_hash, Hash
|
|
19
|
+
attribute :votes, XDR::VarArray[Value]
|
|
20
|
+
attribute :accepted, XDR::VarArray[Value]
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
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
|
+
# PublicKey validators<>;
|
|
12
|
+
# SCPQuorumSet innerSets<>;
|
|
13
|
+
# };
|
|
14
|
+
#
|
|
15
|
+
# ===========================================================================
|
|
16
|
+
module Stellar
|
|
17
|
+
class SCPQuorumSet < XDR::Struct
|
|
18
|
+
attribute :threshold, Uint32
|
|
19
|
+
attribute :validators, XDR::VarArray[PublicKey]
|
|
20
|
+
attribute :inner_sets, XDR::VarArray[SCPQuorumSet]
|
|
21
|
+
end
|
|
22
|
+
end
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct SCPStatement
|
|
9
|
+
# {
|
|
10
|
+
# NodeID nodeID; // v
|
|
11
|
+
# uint64 slotIndex; // i
|
|
12
|
+
#
|
|
13
|
+
# union switch (SCPStatementType type)
|
|
14
|
+
# {
|
|
15
|
+
# case SCP_ST_PREPARE:
|
|
16
|
+
# struct
|
|
17
|
+
# {
|
|
18
|
+
# Hash quorumSetHash; // D
|
|
19
|
+
# SCPBallot ballot; // b
|
|
20
|
+
# SCPBallot* prepared; // p
|
|
21
|
+
# SCPBallot* preparedPrime; // p'
|
|
22
|
+
# uint32 nC; // n_c
|
|
23
|
+
# uint32 nP; // n_P
|
|
24
|
+
# } prepare;
|
|
25
|
+
# case SCP_ST_CONFIRM:
|
|
26
|
+
# struct
|
|
27
|
+
# {
|
|
28
|
+
# Hash quorumSetHash; // D
|
|
29
|
+
# uint32 nPrepared; // n_p
|
|
30
|
+
# SCPBallot commit; // c
|
|
31
|
+
# uint32 nP; // n_P
|
|
32
|
+
# } confirm;
|
|
33
|
+
# case SCP_ST_EXTERNALIZE:
|
|
34
|
+
# struct
|
|
35
|
+
# {
|
|
36
|
+
# SCPBallot commit; // c
|
|
37
|
+
# uint32 nP; // n_P
|
|
38
|
+
# // not from the paper, but useful to build tooling to
|
|
39
|
+
# // traverse the graph based off only the latest statement
|
|
40
|
+
# Hash commitQuorumSetHash; // D used before EXTERNALIZE
|
|
41
|
+
# } externalize;
|
|
42
|
+
# case SCP_ST_NOMINATE:
|
|
43
|
+
# SCPNomination nominate;
|
|
44
|
+
# }
|
|
45
|
+
# pledges;
|
|
46
|
+
# };
|
|
47
|
+
#
|
|
48
|
+
# ===========================================================================
|
|
49
|
+
module Stellar
|
|
50
|
+
class SCPStatement < XDR::Struct
|
|
51
|
+
include XDR::Namespace
|
|
52
|
+
|
|
53
|
+
autoload :Pledges
|
|
54
|
+
|
|
55
|
+
attribute :node_id, NodeID
|
|
56
|
+
attribute :slot_index, Uint64
|
|
57
|
+
attribute :pledges, Pledges
|
|
58
|
+
end
|
|
59
|
+
end
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
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 SCP_ST_PREPARE:
|
|
11
|
+
# struct
|
|
12
|
+
# {
|
|
13
|
+
# Hash quorumSetHash; // D
|
|
14
|
+
# SCPBallot ballot; // b
|
|
15
|
+
# SCPBallot* prepared; // p
|
|
16
|
+
# SCPBallot* preparedPrime; // p'
|
|
17
|
+
# uint32 nC; // n_c
|
|
18
|
+
# uint32 nP; // n_P
|
|
19
|
+
# } prepare;
|
|
20
|
+
# case SCP_ST_CONFIRM:
|
|
21
|
+
# struct
|
|
22
|
+
# {
|
|
23
|
+
# Hash quorumSetHash; // D
|
|
24
|
+
# uint32 nPrepared; // n_p
|
|
25
|
+
# SCPBallot commit; // c
|
|
26
|
+
# uint32 nP; // n_P
|
|
27
|
+
# } confirm;
|
|
28
|
+
# case SCP_ST_EXTERNALIZE:
|
|
29
|
+
# struct
|
|
30
|
+
# {
|
|
31
|
+
# SCPBallot commit; // c
|
|
32
|
+
# uint32 nP; // n_P
|
|
33
|
+
# // not from the paper, but useful to build tooling to
|
|
34
|
+
# // traverse the graph based off only the latest statement
|
|
35
|
+
# Hash commitQuorumSetHash; // D used before EXTERNALIZE
|
|
36
|
+
# } externalize;
|
|
37
|
+
# case SCP_ST_NOMINATE:
|
|
38
|
+
# SCPNomination nominate;
|
|
39
|
+
# }
|
|
40
|
+
#
|
|
41
|
+
# ===========================================================================
|
|
42
|
+
module Stellar
|
|
43
|
+
class SCPStatement
|
|
44
|
+
class Pledges < XDR::Union
|
|
45
|
+
include XDR::Namespace
|
|
46
|
+
|
|
47
|
+
autoload :Prepare
|
|
48
|
+
autoload :Confirm
|
|
49
|
+
autoload :Externalize
|
|
50
|
+
|
|
51
|
+
switch_on SCPStatementType, :type
|
|
52
|
+
|
|
53
|
+
switch :scp_st_prepare, :prepare
|
|
54
|
+
switch :scp_st_confirm, :confirm
|
|
55
|
+
switch :scp_st_externalize, :externalize
|
|
56
|
+
switch :scp_st_nominate, :nominate
|
|
57
|
+
|
|
58
|
+
attribute :prepare, Prepare
|
|
59
|
+
attribute :confirm, Confirm
|
|
60
|
+
attribute :externalize, Externalize
|
|
61
|
+
attribute :nominate, SCPNomination
|
|
62
|
+
end
|
|
63
|
+
end
|
|
64
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct
|
|
9
|
+
# {
|
|
10
|
+
# Hash quorumSetHash; // D
|
|
11
|
+
# uint32 nPrepared; // n_p
|
|
12
|
+
# SCPBallot commit; // c
|
|
13
|
+
# uint32 nP; // n_P
|
|
14
|
+
# }
|
|
15
|
+
#
|
|
16
|
+
# ===========================================================================
|
|
17
|
+
module Stellar
|
|
18
|
+
class SCPStatement
|
|
19
|
+
class Pledges
|
|
20
|
+
class Confirm < XDR::Struct
|
|
21
|
+
attribute :quorum_set_hash, Hash
|
|
22
|
+
attribute :n_prepared, Uint32
|
|
23
|
+
attribute :commit, SCPBallot
|
|
24
|
+
attribute :n_p, Uint32
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct
|
|
9
|
+
# {
|
|
10
|
+
# SCPBallot commit; // c
|
|
11
|
+
# uint32 nP; // n_P
|
|
12
|
+
# // not from the paper, but useful to build tooling to
|
|
13
|
+
# // traverse the graph based off only the latest statement
|
|
14
|
+
# Hash commitQuorumSetHash; // D used before EXTERNALIZE
|
|
15
|
+
# }
|
|
16
|
+
#
|
|
17
|
+
# ===========================================================================
|
|
18
|
+
module Stellar
|
|
19
|
+
class SCPStatement
|
|
20
|
+
class Pledges
|
|
21
|
+
class Externalize < XDR::Struct
|
|
22
|
+
attribute :commit, SCPBallot
|
|
23
|
+
attribute :n_p, Uint32
|
|
24
|
+
attribute :commit_quorum_set_hash, Hash
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
end
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# struct
|
|
9
|
+
# {
|
|
10
|
+
# Hash quorumSetHash; // D
|
|
11
|
+
# SCPBallot ballot; // b
|
|
12
|
+
# SCPBallot* prepared; // p
|
|
13
|
+
# SCPBallot* preparedPrime; // p'
|
|
14
|
+
# uint32 nC; // n_c
|
|
15
|
+
# uint32 nP; // n_P
|
|
16
|
+
# }
|
|
17
|
+
#
|
|
18
|
+
# ===========================================================================
|
|
19
|
+
module Stellar
|
|
20
|
+
class SCPStatement
|
|
21
|
+
class Pledges
|
|
22
|
+
class Prepare < XDR::Struct
|
|
23
|
+
attribute :quorum_set_hash, Hash
|
|
24
|
+
attribute :ballot, SCPBallot
|
|
25
|
+
attribute :prepared, XDR::Option[SCPBallot]
|
|
26
|
+
attribute :prepared_prime, XDR::Option[SCPBallot]
|
|
27
|
+
attribute :n_c, Uint32
|
|
28
|
+
attribute :n_p, Uint32
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
2
|
+
# DO NOT EDIT or your changes may be overwritten
|
|
3
|
+
|
|
4
|
+
require 'xdr'
|
|
5
|
+
|
|
6
|
+
# === xdr source ============================================================
|
|
7
|
+
#
|
|
8
|
+
# enum SCPStatementType
|
|
9
|
+
# {
|
|
10
|
+
# SCP_ST_PREPARE = 0,
|
|
11
|
+
# SCP_ST_CONFIRM = 1,
|
|
12
|
+
# SCP_ST_EXTERNALIZE = 2,
|
|
13
|
+
# SCP_ST_NOMINATE = 3
|
|
14
|
+
# };
|
|
15
|
+
#
|
|
16
|
+
# ===========================================================================
|
|
17
|
+
module Stellar
|
|
18
|
+
class SCPStatementType < XDR::Enum
|
|
19
|
+
member :scp_st_prepare, 0
|
|
20
|
+
member :scp_st_confirm, 1
|
|
21
|
+
member :scp_st_externalize, 2
|
|
22
|
+
member :scp_st_nominate, 3
|
|
23
|
+
|
|
24
|
+
seal
|
|
25
|
+
end
|
|
26
|
+
end
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
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
|
+
# // account threshold manipulation
|
|
16
|
+
# uint32* masterWeight; // weight of the master account
|
|
17
|
+
# uint32* lowThreshold;
|
|
18
|
+
# uint32* medThreshold;
|
|
19
|
+
# uint32* highThreshold;
|
|
20
|
+
#
|
|
21
|
+
# string32* homeDomain; // sets the home domain
|
|
22
|
+
#
|
|
23
|
+
# // Add, update or remove a signer for the account
|
|
24
|
+
# // signer is deleted if the weight is 0
|
|
25
|
+
# Signer* signer;
|
|
26
|
+
# };
|
|
27
|
+
#
|
|
28
|
+
# ===========================================================================
|
|
29
|
+
module Stellar
|
|
30
|
+
class SetOptionsOp < XDR::Struct
|
|
31
|
+
attribute :inflation_dest, XDR::Option[AccountID]
|
|
32
|
+
attribute :clear_flags, XDR::Option[Uint32]
|
|
33
|
+
attribute :set_flags, XDR::Option[Uint32]
|
|
34
|
+
attribute :master_weight, XDR::Option[Uint32]
|
|
35
|
+
attribute :low_threshold, XDR::Option[Uint32]
|
|
36
|
+
attribute :med_threshold, XDR::Option[Uint32]
|
|
37
|
+
attribute :high_threshold, XDR::Option[Uint32]
|
|
38
|
+
attribute :home_domain, XDR::Option[String32]
|
|
39
|
+
attribute :signer, XDR::Option[Signer]
|
|
40
|
+
end
|
|
41
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
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,38 @@
|
|
|
1
|
+
# This code was automatically generated using xdrgen
|
|
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
|
+
# SET_OPTIONS_INVALID_INFLATION = -4, // inflation account does not exist
|
|
17
|
+
# SET_OPTIONS_CANT_CHANGE = -5, // can no longer change this option
|
|
18
|
+
# SET_OPTIONS_UNKNOWN_FLAG = -6, // can't set an unknown flag
|
|
19
|
+
# SET_OPTIONS_THRESHOLD_OUT_OF_RANGE = -7, // bad value for weight/threshold
|
|
20
|
+
# SET_OPTIONS_BAD_SIGNER = -8 // signer cannot be masterkey
|
|
21
|
+
# };
|
|
22
|
+
#
|
|
23
|
+
# ===========================================================================
|
|
24
|
+
module Stellar
|
|
25
|
+
class SetOptionsResultCode < XDR::Enum
|
|
26
|
+
member :set_options_success, 0
|
|
27
|
+
member :set_options_low_reserve, -1
|
|
28
|
+
member :set_options_too_many_signers, -2
|
|
29
|
+
member :set_options_bad_flags, -3
|
|
30
|
+
member :set_options_invalid_inflation, -4
|
|
31
|
+
member :set_options_cant_change, -5
|
|
32
|
+
member :set_options_unknown_flag, -6
|
|
33
|
+
member :set_options_threshold_out_of_range, -7
|
|
34
|
+
member :set_options_bad_signer, -8
|
|
35
|
+
|
|
36
|
+
seal
|
|
37
|
+
end
|
|
38
|
+
end
|