macro db_mapping(mapping) def initialize({{*mapping.keys.map { |id| "@#{id}".id }}}) end def to_a return [ {{*mapping.keys.map { |id| "@#{id}".id }}} ] end def self.to_type_tuple return { {{*mapping.keys.map { |id| "#{id}" }}} } end DB.mapping( {{mapping}} ) end macro json_mapping(mapping) def initialize({{*mapping.keys.map { |id| "@#{id}".id }}}) end def to_a return [ {{*mapping.keys.map { |id| "@#{id}".id }}} ] end JSON.mapping( {{mapping}} ) YAML.mapping( {{mapping}} ) end macro yaml_mapping(mapping) def initialize({{*mapping.keys.map { |id| "@#{id}".id }}}) end def to_a return [ {{*mapping.keys.map { |id| "@#{id}".id }}} ] end def to_tuple return { {{*mapping.keys.map { |id| "@#{id}".id }}} } end YAML.mapping({{mapping}}) end macro templated(filename, template = "template") render "src/invidious/views/#{{{filename}}}.ecr", "src/invidious/views/#{{{template}}}.ecr" end macro rendered(filename) render "src/invidious/views/#{{{filename}}}.ecr" end