class RablRails::Configuration

Attributes

cache_templates[RW]
enable_jsonp_callbacks[RW]
exclude_nil_values[RW]
include_json_root[RW]
include_plist_root[RW]
json_engine[RW]
non_collection_classes[RW]
plist_engine[RW]
replace_empty_string_values_with_nil[RW]
replace_nil_values_with_empty_strings[RW]
xml_options[RW]

Public Class Methods

new() click to toggle source
# File lib/rabl-rails/configuration.rb, line 14
def initialize
  @json_engine            = defined?(::Oj) ? ::Oj : ::JSON
  @include_json_root      = true
  @enable_jsonp_callbacks = false

  @xml_options = { dasherize: true, skip_types: false }

  @plist_engine       = defined?(::Plist) ? ::Plist::Emit : nil
  @include_plist_root = false

  @cache_templates    = ActionController::Base.perform_caching

  @replace_nil_values_with_empty_strings  = false
  @replace_empty_string_values_with_nil   = false
  @exclude_nil_values                     = false

  @non_collection_classes = Set.new(['Struct'])
end

Public Instance Methods

result_flags() click to toggle source
# File lib/rabl-rails/configuration.rb, line 33
def result_flags
  @result_flags ||= begin
    result = 0
    result |= 0b001   if @replace_nil_values_with_empty_strings
    result |= 0b010   if @replace_empty_string_values_with_nil
    result |= 0b100   if @exclude_nil_values
    result
  end
end