{"name":"rbs","scopeName":"source.rbs","patterns":[{"include":"#comments"},{"include":"#keywords"},{"include":"#strings"}],"repository":{"comments":{"name":"comment.line.number-sign","begin":"#","end":"\n"},"keywords":{"patterns":[{"name":"keyword.control.class.rbs","match":"\\b(class)\\s+((::)?([A-Z]\\w*(::))*[A-Z]\\w*)","captures":{"1":{"name":"keyword.control.class.rbs"},"2":{"name":"entity.name.class"}}},{"name":"keyword.control.type.rbs","match":"\\b(type)\\b"},{"name":"keyword.control.def.rbs","match":"\\b(def)\\b([^:]+)","captures":{"1":{"name":"keyword.control.def.rbs"},"2":{"name":"entity.name.function.rbs"}}},{"name":"keyword.control.self.rbs","match":"\\b(self)\\b"},{"name":"keyword.control.void.rbs","match":"\\b(void)\\b"},{"name":"keyword.control.untyped.rbs","match":"\\b(untyped)\\b"},{"name":"keyword.control.top.rbs","match":"\\b(top)\\b"},{"name":"keyword.control.bot.rbs","match":"\\b(bot)\\b"},{"name":"keyword.control.instance.rbs","match":"\\b(instance)\\b"},{"name":"keyword.control.bool.rbs","match":"\\b(bool)\\b"},{"name":"keyword.control.nil.rbs","match":"\\b(nil)\\b"},{"name":"keyword.control.singleton.rbs","match":"\\b(singleton)\\b"},{"name":"keyword.control.interface.rbs","match":"\\b(interface)\\s+((::)?([A-Z]\\w*(::))*_[A-Z]\\w*)","captures":{"1":{"name":"keyword.control.interface.rbs"},"2":{"name":"entity.name.class"}}},{"name":"keyword.control.end.rbs","match":"\\b(end)\\b"},{"name":"keyword.control.include.rbs","match":"\\b(include)\\s+((::)?([A-Z]\\w*(::))*_?[A-Z]\\w*)","captures":{"1":{"name":"keyword.control.include.rbs"},"2":{"name":"variable.other.constant.rbs"}}},{"name":"keyword.control.extend.rbs","match":"\\b(extend)\\s+((::)?([A-Z]\\w*(::))*_?[A-Z]\\w*)","captures":{"1":{"name":"keyword.control.extend.rbs"},"2":{"name":"variable.other.constant.rbs"}}},{"name":"keyword.control.prepend.rbs","match":"\\b(prepend)\\s+((::)?([A-Z]\\w*(::))*[A-Z]\\w*)","captures":{"1":{"name":"keyword.control.prepend.rbs"},"2":{"name":"variable.other.constant.rbs"}}},{"name":"keyword.control.module.rbs","match":"\\b(module)\\s+((::)?([A-Z]\\w*(::))*[A-Z]\\w*)","captures":{"1":{"name":"keyword.control.module.rbs"},"2":{"name":"entity.name.class"}}},{"name":"keyword.control.attr_reader.rbs","match":"\\b(attr_reader)\\b"},{"name":"keyword.control.attr_writer.rbs","match":"\\b(attr_writer)\\b"},{"name":"keyword.control.attr_accessor.rbs","match":"\\b(attr_accessor)\\b"},{"name":"keyword.control.public.rbs","match":"\\b(public)\\b"},{"name":"keyword.control.private.rbs","match":"\\b(private)\\b"},{"name":"keyword.control.alias.rbs","match":"\\b(alias)\\b"},{"name":"keyword.control.unchecked.rbs","match":"\\b(unchecked)\\b"},{"name":"keyword.control.out.rbs","match":"\\b(out)\\b"},{"name":"keyword.control.in.rbs","match":"\\b(in)\\b"},{"name":"keyword.other.use.rbs","match":"\\b(use)\\b"},{"name":"keyword.other.as.rbs","match":"\\b(as)\\b"}]},"strings":{"name":"string.quoted.double.rbs","begin":"\"","end":"\"","patterns":[{"name":"constant.character.escape.rbs","match":"\\\\."}]}}}