Class: Gapic::Presenters::FilePresenter

Inherits:
Object
  • Object
show all
Includes:
Helpers::NamespaceHelper
Defined in:
lib/gapic/presenters/file_presenter.rb

Overview

A presenter for proto files.

Instance Method Summary collapse

Methods included from Helpers::NamespaceHelper

#ensure_absolute_namespace, #fix_namespace, #ruby_namespace, #ruby_namespace_for_address

Constructor Details

#initialize(api, file) ⇒ FilePresenter

Returns a new instance of FilePresenter.

Parameters:



28
29
30
31
# File 'lib/gapic/presenters/file_presenter.rb', line 28

def initialize api, file
  @api = api
  @file = file
end

Instance Method Details

#addressObject



37
38
39
# File 'lib/gapic/presenters/file_presenter.rb', line 37

def address
  @file.address
end

#docs_file_pathObject



54
55
56
# File 'lib/gapic/presenters/file_presenter.rb', line 54

def docs_file_path
  @file.name.gsub ".proto", ".rb"
end

#enumsObject



50
51
52
# File 'lib/gapic/presenters/file_presenter.rb', line 50

def enums
  @enums ||= @file.enums.map { |e| EnumPresenter.new e }
end

#messagesObject



46
47
48
# File 'lib/gapic/presenters/file_presenter.rb', line 46

def messages
  @messages ||= @file.messages.map { |m| MessagePresenter.new @api, m }
end

#nameObject



33
34
35
# File 'lib/gapic/presenters/file_presenter.rb', line 33

def name
  @file.name
end

#namespaceObject



41
42
43
44
# File 'lib/gapic/presenters/file_presenter.rb', line 41

def namespace
  return ensure_absolute_namespace @file.ruby_package if @file.ruby_package.present?
  ruby_namespace_for_address address
end