Skip to content

Commit 51cdcd7

Browse files
committed
Fixed bug with CAtomic erroneously being defined in pure-Ruby gem.
1 parent 54c4d2a commit 51cdcd7

File tree

4 files changed

+24
-21
lines changed

4 files changed

+24
-21
lines changed

Rakefile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,9 @@ Rake::Task[:clean].enhance do
6565
rm_rf 'tmp'
6666
rm_rf 'lib/1.9'
6767
rm_rf 'lib/2.0'
68-
rm_f Dir.glob('./lib/*.jar')
68+
rm_f Dir.glob('./**/*.so')
6969
rm_f Dir.glob('./**/*.bundle')
70+
rm_f Dir.glob('./lib/*.jar')
7071
mkdir_p 'pkg'
7172
end
7273

concurrent-ruby.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ Gem::Specification.new do |s|
1818
Inspired by Erlang, Clojure, Go, JavaScript, actors, and classic concurrency patterns.
1919
EOF
2020

21-
s.files = Dir['lib/**/*']
21+
s.files = Dir['lib/**/*.rb']
2222
s.extra_rdoc_files = Dir['README*', 'LICENSE*', 'CHANGELOG*']
2323
s.require_paths = ['lib']
2424

lib/concurrent/atomic.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -78,7 +78,7 @@ class Concurrent::Atomic < Concurrent::JavaAtomic
7878
class Concurrent::Atomic < Concurrent::RbxAtomic
7979
end
8080

81-
elsif defined?(Concurrent::CAtomic)
81+
elsif defined? Concurrent::CAtomic
8282

8383
# @!macro atomic_reference
8484
class Concurrent::Atomic < Concurrent::CAtomic
Lines changed: 20 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,29 @@
1-
require_relative '../../extension_helper'
2-
require 'concurrent/atomic_reference/direct_update'
3-
require 'concurrent/atomic_reference/numeric_cas_wrapper'
1+
if defined? Concurrent::CAtomic
2+
require_relative '../../extension_helper'
3+
require 'concurrent/atomic_reference/direct_update'
4+
require 'concurrent/atomic_reference/numeric_cas_wrapper'
45

5-
module Concurrent
6+
module Concurrent
67

7-
# @!macro atomic_reference
8-
class CAtomic
9-
include Concurrent::AtomicDirectUpdate
10-
include Concurrent::AtomicNumericCompareAndSetWrapper
8+
# @!macro atomic_reference
9+
class CAtomic
10+
include Concurrent::AtomicDirectUpdate
11+
include Concurrent::AtomicNumericCompareAndSetWrapper
1112

12-
# @!method initialize
13-
# @!macro atomic_reference_method_initialize
13+
# @!method initialize
14+
# @!macro atomic_reference_method_initialize
1415

15-
# @!method get
16-
# @!macro atomic_reference_method_get
16+
# @!method get
17+
# @!macro atomic_reference_method_get
1718

18-
# @!method set
19-
# @!macro atomic_reference_method_set
19+
# @!method set
20+
# @!macro atomic_reference_method_set
2021

21-
# @!method get_and_set
22-
# @!macro atomic_reference_method_get_and_set
22+
# @!method get_and_set
23+
# @!macro atomic_reference_method_get_and_set
2324

24-
# @!method _compare_and_set
25-
# @!macro atomic_reference_method_compare_and_set
25+
# @!method _compare_and_set
26+
# @!macro atomic_reference_method_compare_and_set
27+
end
2628
end
2729
end

0 commit comments

Comments
 (0)