razum2um/lurker

View on GitHub
lib/lurker/json/orderer.rb

Summary

Maintainability
A
0 mins
Test Coverage
module Lurker
  module Json
    class Orderer
      EXTENSIONS = 'extensions'.freeze

      class << self
        def reorder(schema)
          new.reorder(schema)
        end
      end

      def reorder(schema)
        extensions = schema.delete(EXTENSIONS).try(:reorder!)
        schema.reorder!
        schema[EXTENSIONS] = extensions
      end
    end
  end
end