Sha256: c5bb7d6b5afdca7861a3cbec9bc2b39c8c22537584823b5e0ae71678b31e80fd
Contents?: true
Size: 1.11 KB
Versions: 9
Compression:
Stored size: 1.11 KB
Contents
# typed: true module Parlour class RbsGenerator < Generator # Represents an interface definition. class InterfaceNamespace < Namespace extend T::Sig sig do override.params( indent_level: Integer, options: Options ).returns(T::Array[String]) end # Generates the RBS lines for this interface. # # @param indent_level [Integer] The indentation level to generate the lines at. # @param options [Options] The formatting options to use. # @return [Array<String>] The RBS lines, formatted as specified. def generate_rbs(indent_level, options) lines = generate_comments(indent_level, options) lines << options.indented(indent_level, "interface #{name}") lines += generate_body(indent_level + 1, options) lines << options.indented(indent_level, "end") end sig { override.returns(String) } # Returns a human-readable brief string description of this interface. # @return [String] def describe "Interface #{name} - #{children.length}" end end end end
Version data entries
9 entries across 9 versions & 1 rubygems