class Cucumber::Messages::Feature

def self.from_h(hash)

def self.from_h(hash)
  return nil if hash.nil?
  self.new(
    location: Location.from_h(hash[:location]),
    tags: hash[:tags]&.map { |item| Tag.from_h(item) },
    language: hash[:language],
    keyword: hash[:keyword],
    name: hash[:name],
    description: hash[:description],
    children: hash[:children]&.map { |item| FeatureChild.from_h(item) },
  )
end

def initialize(

def initialize(
  location: Location.new,
  tags: [],
  language: '',
  keyword: '',
  name: '',
  description: '',
  children: []
)
  @location = location
  @tags = tags
  @language = language
  @keyword = keyword
  @name = name
  @description = description
  @children = children
end