module

ActiveModel

ActiveModel::Serialization + Serializers::JSON.

as_json/serializable_hash read the typed attribute set; only/except filter attributes. The methods: option needs runtime method dispatch in Ruby — the port requires the callable methods to be declared up front with serialize_method :shout (compile-time dispatch table).

from_json goes through mass assignment: untyped attributes keep raw JSON scalars ("5" stays String — quirk pinned by oracle ser_from_json_types), typed attributes cast (ser_from_json_typed).

Constants

VERSION = "8.1.4-cr.0"

Class methods

humanize_attribute(name : String) : String

"first_name" → "First name", "m" → "M", "a.b" → "A b" (dots split too, for nested errors — same as the AR port).

Nested types