class Rouge::Lexers::Hack

def self.detect?(text)

def self.detect?(text)
  return true if /<\?hh/ =~ text
  return true if text.shebang?('hhvm')
  return true if /async function [a-zA-Z]/ =~ text
  return true if /\): Awaitable</ =~ text
  return false
end

def self.keywords

def self.keywords
  @hh_keywords ||= super.merge Set.new %w(
    type newtype enum
    as super
    async await Awaitable
    vec dict keyset
    void int string bool float double
    arraykey num Stringish
  )
end