class Rbs2ts::Converter::Declarations::Module

Public Instance Methods

member_to_ts(member) click to toggle source
# File lib/rbs2ts/converter/declarations.rb, line 92
def member_to_ts(member)
  case member
  when ::RBS::AST::Declarations::Class then
    Converter::Declarations::Class.new(member).to_ts
  when ::RBS::AST::Declarations::Module then
    Converter::Declarations::Module.new(member).to_ts
  when ::RBS::AST::Declarations::Interface then
    Converter::Declarations::Interface.new(member).to_ts
  when ::RBS::AST::Declarations::Alias then
    Converter::Declarations::Alias.new(member).to_ts
  when ::RBS::AST::Members::InstanceVariable
    ts = Converter::Members::InstanceVariable.new(member).to_ts
    "export declare let #{ts}"
  when ::RBS::AST::Members::MethodDefinition
    ts = Converter::Members::MethodDefinition.new(member).to_ts
    "export declare function #{ts}"
  else
    ''
  end
end
to_ts() click to toggle source
# File lib/rbs2ts/converter/declarations.rb, line 79
        def to_ts
          members_ts = declaration.members.map {|member|
            member_to_ts(member)
          }.reject(&:empty?).join("\n")

          <<~TS
            export namespace #{Converter::Helper.convert_name(name)} {
            #{Helper.indent(members_ts)}
            };
          TS
          .chomp
        end