Class: Rbs2ts::Converter::Declarations::Interface

Inherits:
Base
  • Object
show all
Defined in:
lib/rbs2ts/converter/declarations.rb

Instance Method Summary collapse

Methods inherited from Base

#initialize, #name

Constructor Details

This class inherits a constructor from Rbs2ts::Converter::Declarations::Base

Instance Method Details

#member_to_ts(member) ⇒ Object



128
129
130
131
132
133
134
135
# File 'lib/rbs2ts/converter/declarations.rb', line 128

def member_to_ts(member)
  case member
  when ::RBS::AST::Members::MethodDefinition
    Converter::Members::MethodDefinition.new(member).to_ts
  else
    ''
  end
end

#to_tsObject



115
116
117
118
119
120
121
122
123
124
125
126
# File 'lib/rbs2ts/converter/declarations.rb', line 115

def to_ts
  members_ts = declaration.members.map {|member|
    member_to_ts(member)
  }.reject(&:empty?).join("\n")

  "    export interface \#{Converter::Helper.convert_name(name.gsub(/_/, ''))} {\n    \#{Helper.indent(members_ts)}\n    };\n  TS\n  .chomp\nend\n"