Fix warnings

JRuby-specific: fix 'warning: (...) interpreted as grouped expression'
This commit is contained in:
Benjamin Fleischer
2015-08-21 02:23:37 -04:00
parent 9aad8b4d29
commit d315151e8a
16 changed files with 77 additions and 54 deletions

View File

@@ -1,4 +1,4 @@
require "set"
require 'set'
module ActiveModel
class SerializableResource
@@ -76,7 +76,9 @@ module ActiveModel
private
ActiveModelSerializers.silence_warnings do
attr_reader :resource, :adapter_opts, :serializer_opts
end
end
end

View File

@@ -9,6 +9,7 @@ module ActiveModel
autoload :Adapter
autoload :Lint
autoload :Associations
autoload :Fieldset
include Configuration
include Associations
@@ -66,10 +67,10 @@ module ActiveModel
@_attributes_keys[attr] = { key: key } if key != attr
@_attributes << key unless @_attributes.include?(key)
unless respond_to?(key, false) || _fragmented.respond_to?(attr)
ActiveModelSerializers.silence_warnings do
define_method key do
object.read_attribute_for_serialization(attr)
end
end unless respond_to?(key, false) || _fragmented.respond_to?(attr)
end
end

View File

@@ -1,13 +1,23 @@
require 'active_model/serializer/adapter/fragment_cache'
module ActiveModel
class Serializer
class Adapter
extend ActiveSupport::Autoload
autoload :Json
require 'active_model/serializer/adapter/json'
require 'active_model/serializer/adapter/json_api'
autoload :FlattenJson
autoload :Null
autoload :JsonApi
autoload :FragmentCache
def self.create(resource, options = {})
override = options.delete(:adapter)
klass = override ? adapter_class(override) : ActiveModel::Serializer.adapter
klass.new(resource, options)
end
def self.adapter_class(adapter)
adapter_name = adapter.to_s.classify.sub("API", "Api")
"ActiveModel::Serializer::Adapter::#{adapter_name}".safe_constantize
end
attr_reader :serializer
@@ -26,17 +36,6 @@ module ActiveModel
hash
end
def self.create(resource, options = {})
override = options.delete(:adapter)
klass = override ? adapter_class(override) : ActiveModel::Serializer.adapter
klass.new(resource, options)
end
def self.adapter_class(adapter)
adapter_name = adapter.to_s.classify.sub("API", "Api")
"ActiveModel::Serializer::Adapter::#{adapter_name}".safe_constantize
end
def fragment_cache(*args)
raise NotImplementedError, 'This is an abstract method. Should be implemented at the concrete adapter.'
end

View File

@@ -1,3 +1,4 @@
require 'active_model/serializer/adapter/fragment_cache'
module ActiveModel
class Serializer
class Adapter
@@ -12,4 +13,4 @@ module ActiveModel
end
end
end
end
end

View File

@@ -1,3 +1,4 @@
require 'active_model/serializer/adapter/fragment_cache'
module ActiveModel
class Serializer
class Adapter
@@ -20,4 +21,4 @@ module ActiveModel
end
end
end
end
end

View File

@@ -73,11 +73,9 @@ module ActiveModel
def associate(reflection)
self._reflections = _reflections.dup
unless method_defined?(reflection.name)
define_method reflection.name do
object.send reflection.name
end
end
define_method reflection.name do
object.send reflection.name
end unless method_defined?(reflection.name)
self._reflections << reflection
end

View File

@@ -18,7 +18,9 @@ module ActiveModel
private
ActiveModelSerializers.silence_warnings do
attr_reader :raw_fields, :root
end
def parsed_fields
if raw_fields.is_a?(Hash)
@@ -37,4 +39,4 @@ module ActiveModel
end
end
end
end

View File

@@ -1,7 +1,18 @@
module ActiveModelSerializers
module_function
def silence_warnings
verbose = $VERBOSE
$VERBOSE = nil
yield
ensure
$VERBOSE = verbose
end
end
require 'active_model'
require 'active_model/serializer/version'
require 'active_model/serializer'
require 'active_model/serializer/fieldset'
require 'active_model/serializable_resource'
begin