Sha256: 55350be779ee576f71ed277781207986b1eab8fe35c86fbc97c4919142abdb05

Contents?: true

Size: 678 Bytes

Versions: 15

Compression:

Stored size: 678 Bytes

Contents

module Spira::Types

  ##
  # This class does its best to serialize or unserialize RDF values into Ruby
  # values and vice versa using RDF.rb's built-in helpers for `RDF::Literal`s.
  # Its behavior is defined as 'What `RDF::Literal` does' for a given value.
  #
  # @see Spira::Type
  # @see http://rdf.rubyforge.org/RDF/Literal.html
  class Any

    include Spira::Type

    def self.unserialize(value)
      value.respond_to?(:object) ? value.object : value
    end

    def self.serialize(value)
      raise TypeError, "Spira::Types::Any cannot serialize collections" if value.is_a?(Array)
      value.is_a?(RDF::Value) ? value : RDF::Literal.new(value)
    end

  end
end

Version data entries

15 entries across 15 versions & 1 rubygems

Version Path
spira-3.1.1 lib/spira/types/any.rb
spira-3.1.0 lib/spira/types/any.rb
spira-3.0.0 lib/spira/types/any.rb
spira-2.1.0 lib/spira/types/any.rb
spira-2.0.2 lib/spira/types/any.rb
spira-2.0.1 lib/spira/types/any.rb
spira-2.0.0 lib/spira/types/any.rb
spira-1.1.1 lib/spira/types/any.rb
spira-0.7.1 lib/spira/types/any.rb
spira-0.7 lib/spira/types/any.rb
spira-0.5.0 lib/spira/types/any.rb
spira-0.0.12 lib/spira/types/any.rb
spira-0.0.11 lib/spira/types/any.rb
spira-0.0.10 lib/spira/types/any.rb
spira-0.0.9 lib/spira/types/any.rb