class WhoAmI::Comment
Public Class Methods
new(table_name:)
click to toggle source
# File lib/who_am_i/comment.rb, line 3 def initialize(table_name:) @model_info = TableInfo.new(table_name) end
Public Instance Methods
output()
click to toggle source
# File lib/who_am_i/comment.rb, line 7 def output output_header + output_schema + output_indices end
Private Instance Methods
output_header()
click to toggle source
# File lib/who_am_i/comment.rb, line 13 def output_header "# == Schema Info\n" \ "#\n" \ "# Table name: #{@model_info.table_name}\n" \ "#\n" end
output_indices()
click to toggle source
# File lib/who_am_i/comment.rb, line 38 def output_indices if @model_info.indices.none? return "" end tt = TextTable.new(join: " ", prefix: "# ") @model_info.indices.each do |index| tt.push([index.name, "(#{index.columns.join(", ")})"]) end header = "# Indices:\n" \ "#\n" header + tt.to_s + "#\n" end
output_schema()
click to toggle source
# File lib/who_am_i/comment.rb, line 20 def output_schema if @model_info.columns.none? return "" end tt = TextTable.new(join: " ", prefix: "# ") @model_info.columns.each do |column_info| tt.push([ column_info.name, column_info.type, column_info.attributes.join(", "), ]) end tt.to_s + "#\n" end