Class: BTC::Network
- Inherits:
-
Object
- Object
- BTC::Network
- Defined in:
- lib/btcruby/network.rb
Instance Attribute Summary collapse
-
#genesis_block ⇒ Object
Genesis block for this network.
-
#genesis_block_header ⇒ Object
Genesis block header for this network.
-
#mainnet ⇒ Object
Is mainnet (true/false).
-
#max_target ⇒ Object
Maximum target (lowest difficulty) for this network.
-
#name ⇒ Object
Name of the network (mainnet or testnet3).
-
#testnet ⇒ Object
Is testnet (true/false).
Class Method Summary collapse
-
.default ⇒ Object
Default network when it is not explicitly specified.
- .default=(network) ⇒ Object
- .mainnet ⇒ Object
- .testnet ⇒ Object
Instance Method Summary collapse
Instance Attribute Details
#genesis_block ⇒ Object
Genesis block for this network
14 15 16 |
# File 'lib/btcruby/network.rb', line 14 def genesis_block @genesis_block end |
#genesis_block_header ⇒ Object
Genesis block header for this network
17 18 19 |
# File 'lib/btcruby/network.rb', line 17 def genesis_block_header @genesis_block_header end |
#mainnet ⇒ Object
Is mainnet (true/false). Alias: mainnet?
11 12 13 |
# File 'lib/btcruby/network.rb', line 11 def mainnet @mainnet end |
#max_target ⇒ Object
Maximum target (lowest difficulty) for this network.
20 21 22 |
# File 'lib/btcruby/network.rb', line 20 def max_target @max_target end |
#name ⇒ Object
Name of the network (mainnet or testnet3)
5 6 7 |
# File 'lib/btcruby/network.rb', line 5 def name @name end |
#testnet ⇒ Object
Is testnet (true/false). Alias: testnet?
8 9 10 |
# File 'lib/btcruby/network.rb', line 8 def testnet @testnet end |
Class Method Details
.default ⇒ Object
Default network when it is not explicitly specified.
23 24 25 |
# File 'lib/btcruby/network.rb', line 23 def self.default return (@default ||= self.mainnet) end |
.default=(network) ⇒ Object
27 28 29 |
# File 'lib/btcruby/network.rb', line 27 def self.default=(network) @default = network end |
.mainnet ⇒ Object
31 32 33 34 35 36 37 38 39 40 |
# File 'lib/btcruby/network.rb', line 31 def self.mainnet @mainnet ||= begin network = self.new network.name = "mainnet" network.genesis_block = Block.genesis_mainnet network.genesis_block_header = BlockHeader.genesis_mainnet network.max_target = ProofOfWork::MAX_TARGET_MAINNET network end end |
.testnet ⇒ Object
42 43 44 45 46 47 48 49 50 51 52 |
# File 'lib/btcruby/network.rb', line 42 def self.testnet @testnet ||= begin network = self.new network.name = "testnet3" network.testnet = true network.genesis_block = Block.genesis_testnet network.genesis_block_header = BlockHeader.genesis_testnet network.max_target = ProofOfWork::MAX_TARGET_TESTNET network end end |
Instance Method Details
#dup ⇒ Object
63 64 65 66 67 68 69 70 |
# File 'lib/btcruby/network.rb', line 63 def dup network = Network.new network.name = self.name.dup network.testnet = self.testnet network.genesis_block = self.genesis_block network.genesis_block_header = self.genesis_block_header network end |
#mainnet? ⇒ Boolean
57 |
# File 'lib/btcruby/network.rb', line 57 def mainnet?; !testnet?; end |
#testnet? ⇒ Boolean
54 |
# File 'lib/btcruby/network.rb', line 54 def testnet?; @testnet || false; end |