bitclust-core 0.5.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (127) hide show
  1. data/ChangeLog +2907 -0
  2. data/Gemfile +7 -0
  3. data/README +21 -0
  4. data/Rakefile +20 -0
  5. data/bin/bitclust +14 -0
  6. data/bin/refe +36 -0
  7. data/bitclust-dev.gemspec +33 -0
  8. data/bitclust.gemspec +30 -0
  9. data/config.in +23 -0
  10. data/config.ru +48 -0
  11. data/config.ru.sample +31 -0
  12. data/data/bitclust/catalog/ja_JP.EUC-JP +78 -0
  13. data/data/bitclust/catalog/ja_JP.UTF-8 +78 -0
  14. data/data/bitclust/template.lillia/class +98 -0
  15. data/data/bitclust/template.lillia/class-index +28 -0
  16. data/data/bitclust/template.lillia/doc +48 -0
  17. data/data/bitclust/template.lillia/layout +19 -0
  18. data/data/bitclust/template.lillia/library +129 -0
  19. data/data/bitclust/template.lillia/library-index +32 -0
  20. data/data/bitclust/template.lillia/method +20 -0
  21. data/data/bitclust/template.lillia/rd_file +6 -0
  22. data/data/bitclust/template.offline/class +67 -0
  23. data/data/bitclust/template.offline/class-index +28 -0
  24. data/data/bitclust/template.offline/doc +13 -0
  25. data/data/bitclust/template.offline/function +22 -0
  26. data/data/bitclust/template.offline/function-index +24 -0
  27. data/data/bitclust/template.offline/layout +18 -0
  28. data/data/bitclust/template.offline/library +87 -0
  29. data/data/bitclust/template.offline/library-index +32 -0
  30. data/data/bitclust/template.offline/method +21 -0
  31. data/data/bitclust/template.offline/rd_file +6 -0
  32. data/data/bitclust/template/class +133 -0
  33. data/data/bitclust/template/class-index +30 -0
  34. data/data/bitclust/template/doc +14 -0
  35. data/data/bitclust/template/function +21 -0
  36. data/data/bitclust/template/function-index +25 -0
  37. data/data/bitclust/template/layout +19 -0
  38. data/data/bitclust/template/library +89 -0
  39. data/data/bitclust/template/library-index +35 -0
  40. data/data/bitclust/template/method +24 -0
  41. data/data/bitclust/template/opensearchdescription +10 -0
  42. data/data/bitclust/template/search +57 -0
  43. data/lib/bitclust.rb +9 -0
  44. data/lib/bitclust/app.rb +129 -0
  45. data/lib/bitclust/classentry.rb +425 -0
  46. data/lib/bitclust/compat.rb +39 -0
  47. data/lib/bitclust/completion.rb +531 -0
  48. data/lib/bitclust/crossrubyutils.rb +91 -0
  49. data/lib/bitclust/database.rb +181 -0
  50. data/lib/bitclust/docentry.rb +83 -0
  51. data/lib/bitclust/entry.rb +223 -0
  52. data/lib/bitclust/exception.rb +38 -0
  53. data/lib/bitclust/functiondatabase.rb +115 -0
  54. data/lib/bitclust/functionentry.rb +81 -0
  55. data/lib/bitclust/functionreferenceparser.rb +76 -0
  56. data/lib/bitclust/htmlutils.rb +80 -0
  57. data/lib/bitclust/interface.rb +87 -0
  58. data/lib/bitclust/libraryentry.rb +211 -0
  59. data/lib/bitclust/lineinput.rb +165 -0
  60. data/lib/bitclust/messagecatalog.rb +95 -0
  61. data/lib/bitclust/methoddatabase.rb +401 -0
  62. data/lib/bitclust/methodentry.rb +202 -0
  63. data/lib/bitclust/methodid.rb +209 -0
  64. data/lib/bitclust/methodsignature.rb +82 -0
  65. data/lib/bitclust/nameutils.rb +236 -0
  66. data/lib/bitclust/parseutils.rb +60 -0
  67. data/lib/bitclust/preprocessor.rb +273 -0
  68. data/lib/bitclust/rdcompiler.rb +507 -0
  69. data/lib/bitclust/refsdatabase.rb +66 -0
  70. data/lib/bitclust/requesthandler.rb +330 -0
  71. data/lib/bitclust/ridatabase.rb +349 -0
  72. data/lib/bitclust/rrdparser.rb +522 -0
  73. data/lib/bitclust/runner.rb +143 -0
  74. data/lib/bitclust/screen.rb +554 -0
  75. data/lib/bitclust/searcher.rb +518 -0
  76. data/lib/bitclust/server.rb +59 -0
  77. data/lib/bitclust/simplesearcher.rb +84 -0
  78. data/lib/bitclust/subcommand.rb +746 -0
  79. data/lib/bitclust/textutils.rb +51 -0
  80. data/lib/bitclust/version.rb +3 -0
  81. data/packer.rb +224 -0
  82. data/refe2.gemspec +29 -0
  83. data/server.exe +0 -0
  84. data/server.exy +159 -0
  85. data/server.rb +10 -0
  86. data/setup.rb +1596 -0
  87. data/standalone.rb +193 -0
  88. data/test/run_test.rb +15 -0
  89. data/test/test_bitclust.rb +81 -0
  90. data/test/test_entry.rb +39 -0
  91. data/test/test_functiondatabase.rb +55 -0
  92. data/test/test_libraryentry.rb +31 -0
  93. data/test/test_methoddatabase.rb +81 -0
  94. data/test/test_methodsignature.rb +14 -0
  95. data/test/test_nameutils.rb +324 -0
  96. data/test/test_preprocessor.rb +84 -0
  97. data/test/test_rdcompiler.rb +534 -0
  98. data/test/test_refsdatabase.rb +76 -0
  99. data/test/test_rrdparser.rb +26 -0
  100. data/test/test_runner.rb +102 -0
  101. data/test/test_simplesearcher.rb +48 -0
  102. data/theme/default/images/external.png +0 -0
  103. data/theme/default/rurema.png +0 -0
  104. data/theme/default/style.css +288 -0
  105. data/theme/default/test.css +254 -0
  106. data/theme/lillia/rurema.png +0 -0
  107. data/theme/lillia/style.css +331 -0
  108. data/theme/lillia/test.css +254 -0
  109. data/tools/bc-ancestors.rb +153 -0
  110. data/tools/bc-checkparams.rb +246 -0
  111. data/tools/bc-classes.rb +80 -0
  112. data/tools/bc-convert.rb +165 -0
  113. data/tools/bc-list.rb +63 -0
  114. data/tools/bc-methods.rb +171 -0
  115. data/tools/bc-preproc.rb +42 -0
  116. data/tools/bc-rdoc.rb +343 -0
  117. data/tools/bc-tochm.rb +301 -0
  118. data/tools/bc-tohtml.rb +125 -0
  119. data/tools/bc-tohtmlpackage.rb +241 -0
  120. data/tools/check-signature.rb +19 -0
  121. data/tools/forall-ruby.rb +20 -0
  122. data/tools/gencatalog.rb +69 -0
  123. data/tools/statrefm.rb +98 -0
  124. data/tools/stattodo.rb +150 -0
  125. data/tools/update-database.rb +146 -0
  126. data/view.cgi +6 -0
  127. metadata +222 -0
data/Gemfile ADDED
@@ -0,0 +1,7 @@
1
+ source "http://rubygems.org"
2
+
3
+ # Specify your gem's dependencies in bitclust.gemspec
4
+ gemspec :name => "bitclust"
5
+ gemspec :name => "bitclust-dev"
6
+ gemspec :name => "refe2"
7
+
data/README ADDED
@@ -0,0 +1,21 @@
1
+ BitClust README
2
+ ===============
3
+
4
+ About
5
+ -----
6
+
7
+ BitClust is the Next-Generation Ruby reference manual interface.
8
+ For more details, see https://bugs.ruby-lang.org/projects/rurema/wiki/BitClust .
9
+
10
+
11
+ License
12
+ -------
13
+
14
+ Ruby License.
15
+
16
+
17
+ Maintainer
18
+ ----------
19
+
20
+ Minero Aoki <aamine@loveruby.net>
21
+
data/Rakefile ADDED
@@ -0,0 +1,20 @@
1
+
2
+ task :release do
3
+ puts "do not use this task. use gem push."
4
+ exit
5
+ end
6
+
7
+ $:.push File.expand_path("../lib", __FILE__)
8
+ require "bundler/gem_helper"
9
+ require 'bitclust/version'
10
+
11
+ task :default => [:test]
12
+
13
+ desc "run test"
14
+ task :test do
15
+ sh 'ruby test/run_test.rb'
16
+ end
17
+
18
+ Bundler::GemHelper.install_tasks(:name => "bitclust")
19
+ Bundler::GemHelper.install_tasks(:name => "bitclust-dev")
20
+ Bundler::GemHelper.install_tasks(:name => "refe2")
data/bin/bitclust ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+ #
3
+ # bitclust.rb
4
+ #
5
+ # Copyright (c) 2006-2008 Minero Aoki
6
+ #
7
+ # This program is free software.
8
+ # You can distribute/modify this program under the Ruby License.
9
+ #
10
+
11
+ require 'bitclust'
12
+ require 'bitclust/runner'
13
+
14
+ BitClust::Runner.new.run(ARGV)
data/bin/refe ADDED
@@ -0,0 +1,36 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ require 'pathname'
4
+
5
+ bindir = Pathname.new(__FILE__).realpath.dirname
6
+ $LOAD_PATH.unshift((bindir + '../lib').realpath)
7
+
8
+ unless defined?(::Encoding)
9
+ # Ruby 1.8
10
+ $KCODE = 'UTF-8'
11
+ end
12
+
13
+ require 'bitclust/searcher'
14
+
15
+ def main
16
+ Signal.trap(:PIPE, 'IGNORE') rescue nil # Win32 does not have SIGPIPE
17
+ Signal.trap(:INT) { exit 1 }
18
+ _main
19
+ rescue Errno::EPIPE
20
+ exit 0
21
+ end
22
+
23
+ def _main
24
+ refe = BitClust::Searcher.new
25
+ refe.parse ARGV
26
+ refe.exec nil, ARGV
27
+ rescue OptionParser::ParseError => err
28
+ $stderr.puts err.message
29
+ $stderr.puts refe.parser.help
30
+ exit 1
31
+ rescue BitClust::UserError => err
32
+ $stderr.puts err.message
33
+ exit 1
34
+ end
35
+
36
+ main
@@ -0,0 +1,33 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require 'rake'
4
+ require "bitclust/version"
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "bitclust-dev"
8
+ s.version = BitClust::VERSION
9
+ s.authors = ["http://bugs.ruby-lang.org/projects/rurema"]
10
+ s.email = [""]
11
+ s.homepage = "http://doc.ruby-lang.org/ja/"
12
+ s.summary = %Q!BitClust is a rurema document processor.!
13
+ s.description =<<EOD
14
+ Rurema is a Japanese ruby documentation project, and
15
+ bitclust is a rurema document processor.
16
+ This is tools for Rurema developpers.
17
+ EOD
18
+
19
+ s.rubyforge_project = ""
20
+
21
+ s.files = FileList["tools/*", "lib/bitclust.rb"]
22
+ s.executables = FileList["tools/*"].
23
+ exclude("ToDoHistory", "check-signature.rb").
24
+ map{|v| File.basename(v) }
25
+ s.require_paths = ["lib"]
26
+ s.bindir = "tools"
27
+
28
+ # specify any dependencies here; for example:
29
+ # s.add_development_dependency "rspec"
30
+ # s.add_runtime_dependency "rest-client"
31
+ s.add_runtime_dependency "bitclust-core", "= #{BitClust::VERSION}"
32
+ s.add_development_dependency "test-unit", ">= 2.3.0"
33
+ end
data/bitclust.gemspec ADDED
@@ -0,0 +1,30 @@
1
+ # -*- encoding: utf-8 -*-
2
+ $:.push File.expand_path("../lib", __FILE__)
3
+ require 'rake'
4
+ require "bitclust/version"
5
+
6
+ Gem::Specification.new do |s|
7
+ s.name = "bitclust-core"
8
+ s.version = BitClust::VERSION
9
+ s.authors = ["http://bugs.ruby-lang.org/projects/rurema"]
10
+ s.email = [""]
11
+ s.homepage = "http://doc.ruby-lang.org/ja/"
12
+ s.summary = %Q!BitClust is a rurema document processor.!
13
+ s.description =<<EOD
14
+ Rurema is a Japanese ruby documentation project, and
15
+ bitclust is a rurema document processor.
16
+ EOD
17
+
18
+ s.rubyforge_project = ""
19
+
20
+ s.files = FileList["**/*"].exclude("*~", "pkg", "pkg/*")
21
+ s.test_files = FileList["test/**/*.rb"].exclude("*~")
22
+ s.executables = ["bitclust"]
23
+ s.require_paths = ["lib"]
24
+
25
+ # specify any dependencies here; for example:
26
+ # s.add_development_dependency "rspec"
27
+ # s.add_runtime_dependency "rest-client"
28
+ s.add_development_dependency "test-unit", ">= 2.3.0"
29
+ s.add_runtime_dependency "rack"
30
+ end
data/config.in ADDED
@@ -0,0 +1,23 @@
1
+ # BitClust config sample file.
2
+ # Edit this file and rename "config".
3
+
4
+ @bc_urlroot = 'http://doc.loveruby.net'
5
+ @bc_cgidir = File.dirname(File.expand_path(__FILE__))
6
+ @bc_vardir = @bc_cgidir
7
+ @bc_srcdir = @bc_cgidir
8
+
9
+ def setup_environment
10
+ $KCODE = 'UTF-8' unless Object.const_defined?(:Encoding)
11
+ $LOAD_PATH.unshift "#{@bc_srcdir}/lib"
12
+ require 'bitclust'
13
+ end
14
+
15
+ def bitclust_context
16
+ db = BitClust::MethodDatabase.new("#{@bc_vardir}/db")
17
+ manager = BitClust::ScreenManager.new(
18
+ :baseurl => "#{@bc_urlroot}/refm/api/view",
19
+ :datadir => "#{@bc_srcdir}/data/bitclust",
20
+ :encoding => 'utf-8'
21
+ )
22
+ BitClust::RequestHandler.new(db, manager)
23
+ end
data/config.ru ADDED
@@ -0,0 +1,48 @@
1
+ # -*- ruby -*-
2
+
3
+ baseurl = nil
4
+ basepath = ''
5
+ themedir = nil
6
+ %w[theme bitclust/theme ../bitclust/theme].each do |theme|
7
+ dir = File.expand_path(theme, File.dirname(__FILE__))
8
+ if File.directory?(dir)
9
+ themedir = dir
10
+ end
11
+ end
12
+
13
+ $LOAD_PATH.unshift File.expand_path('lib', File.dirname(__FILE__))
14
+ $LOAD_PATH.unshift File.expand_path('bitclust/lib', File.dirname(__FILE__))
15
+ require 'bitclust/app'
16
+
17
+ dbpath = Dir.glob("db-*")
18
+ if dbpath.empty?
19
+ raise 'database not found' unless File.directory? 'db'
20
+ app = BitClust::App.new(
21
+ :dbpath => 'db',
22
+ :viewpath => "/view/",
23
+ :rack => true
24
+ )
25
+ app.interfaces.each do |viewpath, interface|
26
+ map viewpath do
27
+ run interface
28
+ end
29
+ end
30
+ else
31
+ app = BitClust::App.new(
32
+ :dbpath => dbpath,
33
+ :rack => true
34
+ )
35
+ app.interfaces.each do |version, interface|
36
+ map "#{basepath}/#{version}/" do
37
+ run interface
38
+ end
39
+ end
40
+ end
41
+
42
+ map "#{basepath}/" do
43
+ run app
44
+ end
45
+
46
+ map File.join(basepath, 'theme/') do
47
+ run Rack::File.new(themedir)
48
+ end
data/config.ru.sample ADDED
@@ -0,0 +1,31 @@
1
+ # -*- ruby -*-
2
+
3
+ a = File.dirname(File.expand_path(__FILE__))
4
+ $LOAD_PATH.unshift(File.join(a, 'lib'))
5
+ require 'bitclust/app'
6
+
7
+ app = BitClust::App.new(
8
+ :baseurl => 'http://localhost:9292',
9
+ :dbpath => Dir.glob('db-*'),
10
+ :datadir => File.join(a, 'data', 'bitclust'),
11
+ :encoding => 'utf-8',
12
+ :viewpath => '/view',
13
+ :rack => true
14
+ )
15
+
16
+ use Rack::ShowExceptions
17
+ # use Rack::ShowStatus
18
+ use Rack::Lint
19
+ use Rack::CommonLogger
20
+ use Rack::Static, :urls => ['/theme'], :root => '.'
21
+
22
+ map "/" do
23
+ run app
24
+ end
25
+
26
+ app.interfaces.each do |viewpath, interface|
27
+ map '/'+viewpath do
28
+ run interface
29
+ end
30
+ end
31
+
@@ -0,0 +1,78 @@
1
+ Abstract
2
+ ����
3
+ Added Methods
4
+ �ɲä����᥽�å�
5
+ Added/Redefined Methods
6
+ �ɲá�����������᥽�å�
7
+ All Classes
8
+ ���饹����
9
+ All Functions
10
+ �ؿ�����
11
+ All Libraries
12
+ �饤�֥�����
13
+ Builtin Library
14
+ �Ȥ߹��ߥ饤�֥��
15
+ Classes
16
+ ���饹
17
+ Class Index
18
+ ���饹����
19
+ Classes/Modules
20
+ ���饹�ȥ⥸�塼��
21
+ Constants
22
+ ���
23
+ Description
24
+ ����
25
+ Entry
26
+ ����ȥ�
27
+ Exception Classes
28
+ �㳰���饹
29
+ Function Index
30
+ �ؿ�����
31
+ Inherited Methods
32
+ �Ѿ������᥽�å�
33
+ Instance Methods
34
+ ���󥹥��󥹥᥽�å�
35
+ Library
36
+ �饤�֥��
37
+ Library Index
38
+ �饤�֥�����
39
+ Method
40
+ �᥽�å�
41
+ Modules
42
+ �⥸�塼��
43
+ Module Functions
44
+ �⥸�塼��ؿ�
45
+ Objects
46
+ ���֥�������
47
+ Private Instance Methods
48
+ private�᥽�å�
49
+ Private Singleton Methods
50
+ private�ðۥ᥽�å�
51
+ Required Libraries
52
+ Ʊ����require�����饤�֥��
53
+ %d Results
54
+ %d��ҥå�
55
+ Ruby %s Reference Manual
56
+ Ruby %s ��ե���󥹥ޥ˥奢��
57
+ Search
58
+ ����
59
+ Search Results
60
+ �������
61
+ Signature
62
+ ���
63
+ Singleton Methods
64
+ �ðۥ᥽�å�
65
+ Special Variables
66
+ �ü��ѿ�
67
+ Sub-Libraries
68
+ ���֥饤�֥��
69
+ ancestors
70
+ ���饹�ηѾ��ꥹ��
71
+ class %s
72
+ %s���饹
73
+ library %s
74
+ %s�饤�֥��
75
+ module %s
76
+ %s�⥸�塼��
77
+ object %s
78
+ %s���֥�������
@@ -0,0 +1,78 @@
1
+ Abstract
2
+ 要約
3
+ Added Methods
4
+ 追加されるメソッド
5
+ Added/Redefined Methods
6
+ 追加・再定義されるメソッド
7
+ All Classes
8
+ クラス一覧
9
+ All Functions
10
+ 関数一覧
11
+ All Libraries
12
+ ライブラリ一覧
13
+ Builtin Library
14
+ 組み込みライブラリ
15
+ Classes
16
+ クラス
17
+ Class Index
18
+ クラス一覧
19
+ Classes/Modules
20
+ クラスとモジュール
21
+ Constants
22
+ 定数
23
+ Description
24
+ 説明
25
+ Entry
26
+ エントリ
27
+ Exception Classes
28
+ 例外クラス
29
+ Function Index
30
+ 関数一覧
31
+ Inherited Methods
32
+ 継承したメソッド
33
+ Instance Methods
34
+ インスタンスメソッド
35
+ Library
36
+ ライブラリ
37
+ Library Index
38
+ ライブラリ一覧
39
+ Method
40
+ メソッド
41
+ Modules
42
+ モジュール
43
+ Module Functions
44
+ モジュール関数
45
+ Objects
46
+ オブジェクト
47
+ Private Instance Methods
48
+ privateメソッド
49
+ Private Singleton Methods
50
+ private特異メソッド
51
+ Required Libraries
52
+ 同時にrequireされるライブラリ
53
+ %d Results
54
+ %d件ヒット
55
+ Ruby %s Reference Manual
56
+ Ruby %s リファレンスマニュアル
57
+ Search
58
+ 検索
59
+ Search Results
60
+ 検索結果
61
+ Signature
62
+ 定義
63
+ Singleton Methods
64
+ 特異メソッド
65
+ Special Variables
66
+ 特殊変数
67
+ Sub-Libraries
68
+ サブライブラリ
69
+ ancestors
70
+ クラスの継承リスト
71
+ class %s
72
+ %sクラス
73
+ library %s
74
+ %sライブラリ
75
+ module %s
76
+ %sモジュール
77
+ object %s
78
+ %sオブジェクト
@@ -0,0 +1,98 @@
1
+ <% @title = "#{@entry.type} #{@entry.name}" %>
2
+ <div id="main">
3
+
4
+ <p>
5
+ <%= manual_home_link() %>
6
+ &gt; <a href="<%= library_index_url() %>"><%= _('All Libraries') %></a>
7
+ &gt; <%= friendly_library_link(@entry.library.name) %>
8
+ &gt; <%=h _(@entry.type.to_s + ' %s', @entry.name) %>
9
+ </p>
10
+
11
+ <%
12
+ headline_init
13
+ %>
14
+ <%= headline("#{@entry.type} #{@entry.name}" + @entry.ancestors[1..@alevel].map{|c| " + #{c.name}" }.join) %>
15
+ <p>
16
+ <%
17
+ myself, *supers = @entry.ancestors
18
+ n = 0
19
+ %>
20
+ <%= _('ancestors') %>: <%= escape_html(myself.name) %>
21
+ <% supers.each do |c| %>
22
+ <%= @conf[:tochm_mode] ? "&lt;" : a_href("?a=#{n}", "<") %> <%= class_link(c.name) %>
23
+ <% n += 1 %>
24
+ <% end %>
25
+
26
+ <% unless @entry.extended.empty? %>
27
+ <br>extend: <%= @entry.extended.map {|c| class_link(c.name) }.join(', ') %>
28
+ <% end %>
29
+ </p>
30
+
31
+ <% headline_push %>
32
+
33
+ <%= headline("Abstract") %>
34
+ <%= compile_rd(@entry.source) %>
35
+
36
+ <%
37
+ ents = @entry.partitioned_entries(@alevel)
38
+ [[_('Singleton Methods'), ents.singleton_methods ],
39
+ [_('Instance Methods'), ents.instance_methods ],
40
+ [_('Private Singleton Methods'), ents.private_singleton_methods ],
41
+ [_('Private Instance Methods'), ents.private_instance_methods ],
42
+ [_('Module Functions'), ents.module_functions ],
43
+ [_('Constants'), ents.constants ],
44
+ [_('Special Variables'), ents.special_variables ],
45
+ [_('Added Methods'), ents.added ] ]\
46
+ .each do |label, entries|
47
+ unless entries.empty? %>
48
+ <%= headline(label) %>
49
+ <dl class="rightlist">
50
+ <%
51
+ headline_push
52
+ entries.each do |m|
53
+ %>
54
+ <span id="<%= BitClust::NameUtils.encodename_url(m.name) %>"></span>
55
+ <%= compile_method(m) %>
56
+ <%
57
+ end
58
+ headline_pop
59
+ %>
60
+ </dl>
61
+ <%
62
+ end
63
+ end
64
+ headline_pop
65
+ %>
66
+ </div>
67
+
68
+ <div id="leftbox">
69
+
70
+ <div class="leftlist" id="leftlist-up">
71
+ <h2><%= _('Methods') %></h2>
72
+ <form>
73
+ <input type="text" name="pattern" onkeyup="isearch('index-methods-list', this.value)">
74
+ </form>
75
+ <ul id="index-methods-list">
76
+ <% @entry.entries(@alevel).sort.each do |m| %>
77
+ <li class="method"><a href="#<%=h BitClust::NameUtils.encodename_url(m.name) %>"><%=h m.name %></a></li>
78
+ <% end %>
79
+ </ul>
80
+ </div>
81
+
82
+
83
+ <div class="leftlist" id="leftlist-bottom">
84
+ <h2><%= _('Classes') %></h2>
85
+ <form>
86
+ <input type="text" name="pattern" onkeyup="isearch('index-classes-list', this.value)">
87
+ </form>
88
+ <ul id="index-classes-list">
89
+ <%
90
+ lib = @entry.library
91
+ ((lib.all_classes - lib.all_error_classes).sort + lib.all_error_classes).each do |c|
92
+ %>
93
+ <li><%= class_link(c.name, "#{c.name}") %></li>
94
+ <% end %>
95
+ </ul>
96
+ </div>
97
+
98
+ </div>