Sha256: 92e95f6d3973315cc5ab8ac97d552c72cf694635cc2889a3c6b71e19a29cb910
Contents?: true
Size: 836 Bytes
Versions: 2
Compression:
Stored size: 836 Bytes
Contents
module Foobara module TypeDeclarations module Handlers class ExtendModelTypeDeclaration < ExtendRegisteredTypeDeclaration class AttributesHandlerDesugarizer < TypeDeclarations::Desugarizer def applicable?(sugary_type_declaration) sugary_type_declaration.is_a?(::Hash) && sugary_type_declaration[:type] == expected_type_symbol end def expected_type_symbol :model end def desugarize(sugary_type_declaration) handler = handler_for_class(ExtendAttributesTypeDeclaration) attributes_type_declaration = sugary_type_declaration[:attributes_declaration] sugary_type_declaration.merge(attributes_declaration: handler.desugarize(attributes_type_declaration)) end end end end end end
Version data entries
2 entries across 2 versions & 1 rubygems