class TTY::Table::BorderDSL

A class responsible for bulding and modifying border

Used internally by {Table::Border} to allow for building custom border through DSL @api private

Attributes

options[R]

Border options

@return [Table::BorderOptions]

Public Class Methods

new(border_opts = nil, &block) click to toggle source

Initialize a BorderDSL

@param [Hash] characters

the border characters

@return [undefined]

@api private

# File lib/tty/table/border_dsl.rb, line 32
def initialize(border_opts = nil, &block)
  @options = TTY::Table::BorderOptions.from(border_opts)
  yield_or_eval(&block) if block_given?
end

Public Instance Methods

bottom(value) click to toggle source

Set bottom border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 121
def bottom(value)
  characters["bottom"] = value
end
bottom_left(value) click to toggle source

Set bottom left corner border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 145
def bottom_left(value)
  characters["bottom_left"] = value
end
bottom_mid(value) click to toggle source

Set bottom middle border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 133
def bottom_mid(value)
  characters["bottom_mid"] = value
end
bottom_right(value) click to toggle source

Set bottom right corner border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 157
def bottom_right(value)
  characters["bottom_right"] = value
end
center(value) click to toggle source

Set center border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 229
def center(value)
  characters["center"] = value
end
left(value) click to toggle source

Set left border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 217
def left(value)
  characters["left"] = value
end
mid(value) click to toggle source

Set middle border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 169
def mid(value)
  characters["mid"] = value
end
mid_left(value) click to toggle source

Set middle left corner border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 193
def mid_left(value)
  characters["mid_left"] = value
end
mid_mid(value) click to toggle source

Set middle border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 181
def mid_mid(value)
  characters["mid_mid"] = value
end
mid_right(value) click to toggle source

Set middle right corner border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 205
def mid_right(value)
  characters["mid_right"] = value
end
right(value) click to toggle source

Set right border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 241
def right(value)
  characters["right"] = value
end
separator(value = (not_set = true)) click to toggle source

Apply table tuple separator

@param [Symbol] value

the table tuple separator

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 59
def separator(value = (not_set = true))
  return options.separator if not_set

  options.separator = value
end
style(value = (not_set = true)) click to toggle source

Apply style color to the border

@param [Symbol] value

the style color for the border

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 45
def style(value = (not_set = true))
  return options.style if not_set

  options.style = value
end
top(value) click to toggle source

Set top border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 73
def top(value)
  characters["top"] = value
end
top_left(value) click to toggle source

Set top left corner border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 97
def top_left(value)
  characters["top_left"] = value
end
top_mid(value) click to toggle source

Set top middle border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 85
def top_mid(value)
  characters["top_mid"] = value
end
top_right(value) click to toggle source

Set top right corner border character

@param [String] value

the character value

@return [undefined]

@api public

# File lib/tty/table/border_dsl.rb, line 109
def top_right(value)
  characters["top_right"] = value
end

Private Instance Methods

yield_or_eval() { |self| ... } click to toggle source

Evaluate block

@return [Table]

@api private

# File lib/tty/table/border_dsl.rb, line 252
def yield_or_eval(&block)
  return unless block
  block.arity > 0 ? yield(self) : instance_eval(&block)
end