класс Rails::SourceAnnotationExtractor::Annotation
Публичные методы класса
# File railties/lib/rails/source_annotation_extractor.rb, line 17 def self.directories @@directories ||= %w(app config db lib test) end
# File railties/lib/rails/source_annotation_extractor.rb, line 37
def self.extensions
@@extensions ||= {}
end # File railties/lib/rails/source_annotation_extractor.rb, line 23 def self.register_directories(*dirs) directories.push(*dirs) end
Регистрирует дополнительные директории для включения
Rails::SourceAnnotationExtractor::Annotation.register_directories("spec", "another")
# File railties/lib/rails/source_annotation_extractor.rb, line 43
def self.register_extensions(*exts, &block)
extensions[/\.(#{exts.join("|")})$/] = block
end Регистрирует новые расширения аннотаций Файл
Rails::SourceAnnotationExtractor::Annotation.register_extensions("css", "scss", "sass", "less", "js") { |tag| /\/\/\s*(#{tag}):?\s*(.*)$/ }
# File railties/lib/rails/source_annotation_extractor.rb, line 33 def self.register_tags(*additional_tags) tags.push(*additional_tags) end
Регистрирует дополнительные метки
Rails::SourceAnnotationExtractor::Annotation.register_tags("TESTME", "DEPRECATEME")
# File railties/lib/rails/source_annotation_extractor.rb, line 27 def self.tags @@tags ||= %w(OPTIMIZE FIXME TODO) end
Публичные методы экземпляра
# File railties/lib/rails/source_annotation_extractor.rb, line 57
def to_s(options = {})
s = +"[#{line.to_s.rjust(options[:indent])}] "
s << "[#{tag}] " if options[:tag]
s << text
end Возвращает представление аннотации, которое выглядит так:
[126] [TODO] This algorithm is simple and clearly correct, make it faster.
Если у options есть флаг :tag, метка отображается, как в примере выше. В противном случае строка содержит только номер строки и текст.
© 2004–2019 David Heinemeier Hansson
Licensed under the MIT License.