Class: BitClust::URLMapper

Inherits:
Object show all
Includes:
NameUtils
Defined in:
lib/bitclust/screen.rb

Constant Summary

Constants included from NameUtils

NameUtils::CHAR_TO_MARK, NameUtils::CHAR_TO_NAME, NameUtils::CLASS_NAME_RE, NameUtils::CLASS_PATH_RE, NameUtils::CONST_PATH_RE, NameUtils::CONST_RE, NameUtils::GVAR_RE, NameUtils::LIBNAME_RE, NameUtils::MARK_TO_CHAR, NameUtils::MARK_TO_NAME, NameUtils::METHOD_NAME_RE, NameUtils::METHOD_SPEC_RE, NameUtils::MID, NameUtils::NAME_TO_CHAR, NameUtils::NAME_TO_MARK, NameUtils::TYPEMARK_RE

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from NameUtils

build_method_id, classid2name, classname2id, classname?, decodeid, decodename_fs, decodename_url, encodeid, encodename_fs, encodename_rdocurl, encodename_url, functionname?, gvarname?, html_filename, libid2name, libname2id, libname?, method_spec?, methodid2classid, methodid2libid, methodid2mname, methodid2specparts, methodid2specstring, methodid2typechar, methodid2typemark, methodid2typename, methodname?, split_method_id, split_method_spec, typechar2mark, typechar2name, typechar?, typemark2char, typemark2name, typemark?, typename2char, typename2mark, typename?

Constructor Details

#initialize(h) ⇒ URLMapper

Returns a new instance of URLMapper.



94
95
96
97
98
99
100
# File 'lib/bitclust/screen.rb', line 94

def initialize(h)
  @base_url = h[:base_url]
  @cgi_url = h[:cgi_url]
  @css_url = h[:css_url]
  @favicon_url = h[:favicon_url]
  @theme = h[:theme] || 'default'
end

Instance Attribute Details

#base_urlObject (readonly)

Returns the value of attribute base_url.



102
103
104
# File 'lib/bitclust/screen.rb', line 102

def base_url
  @base_url
end

Instance Method Details

#canonical_url(current_url) ⇒ Object



173
174
175
# File 'lib/bitclust/screen.rb', line 173

def canonical_url(current_url)
  current_url
end

#cgi_urlObject



104
105
106
# File 'lib/bitclust/screen.rb', line 104

def cgi_url
  @cgi_url
end

#class_url(name) ⇒ Object



139
140
141
# File 'lib/bitclust/screen.rb', line 139

def class_url(name)
  "#{@cgi_url}/class/#{classname2id(name)}"
end

#css_urlObject



108
109
110
111
# File 'lib/bitclust/screen.rb', line 108

def css_url
  return @css_url if @css_url
  "#{@base_url}/theme/#{@theme}/style.css"
end

#custom_css_url(css) ⇒ Object



113
114
115
# File 'lib/bitclust/screen.rb', line 113

def custom_css_url(css)
  "#{@base_url}/theme/#{@theme}/#{css}"
end

#custom_js_url(js) ⇒ Object



122
123
124
# File 'lib/bitclust/screen.rb', line 122

def custom_js_url(js)
  "#{@base_url}/theme/#{@theme}/#{js}"
end

#document_url(name) ⇒ Object



168
169
170
171
# File 'lib/bitclust/screen.rb', line 168

def document_url(name)
  raise unless %r!\A[-\w/]+\z! =~ name
  "#{@cgi_url}/#{name}"
end

#favicon_urlObject



126
127
128
129
# File 'lib/bitclust/screen.rb', line 126

def favicon_url
  return @favicon_url if @favicon_url
  "#{@base_url}/theme/#{@theme}/rurema.png"
end

#function_index_urlObject



148
149
150
# File 'lib/bitclust/screen.rb', line 148

def function_index_url
  "#{@cgi_url}/function/"
end

#function_url(name) ⇒ Object



152
153
154
# File 'lib/bitclust/screen.rb', line 152

def function_url(name)
  "#{@cgi_url}/function/#{name}"
end

#js_urlObject



117
118
119
120
# File 'lib/bitclust/screen.rb', line 117

def js_url
  return @js_url if @js_url
  "#{@base_url}/theme/#{@theme}/t.js"
end

#library_index_urlObject



131
132
133
# File 'lib/bitclust/screen.rb', line 131

def library_index_url
  "#{@cgi_url}/library/"
end

#library_url(name) ⇒ Object



135
136
137
# File 'lib/bitclust/screen.rb', line 135

def library_url(name)
  "#{@cgi_url}/library/#{libname2id(name)}"
end

#method_url(spec) ⇒ Object



143
144
145
146
# File 'lib/bitclust/screen.rb', line 143

def method_url(spec)
  cname, tmark, mname = *split_method_spec(spec)
  "#{@cgi_url}/method/#{classname2id(cname)}/#{typemark2char(tmark)}/#{encodename_url(mname)}"
end

#opensearchdescription_urlObject



156
157
158
# File 'lib/bitclust/screen.rb', line 156

def opensearchdescription_url
  "#{@cgi_url}/opensearchdescription"
end

#search_urlObject



160
161
162
# File 'lib/bitclust/screen.rb', line 160

def search_url
  "#{@cgi_url}/search"
end

#spec_url(name) ⇒ Object



164
165
166
# File 'lib/bitclust/screen.rb', line 164

def spec_url(name)
  "#{@cgi_url}/spec/#{name}"
end