Class: CLI::UI::Widgets::Base Abstract

Inherits:
Object
  • Object
show all
Defined in:
lib/cli/ui/widgets/base.rb

Overview

This class is abstract.

Direct Known Subclasses

Status

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(argstring) ⇒ Base

: (String argstring) -> void



19
20
21
22
23
24
25
26
27
28
# File 'lib/cli/ui/widgets/base.rb', line 19

def initialize(argstring)
  pat = self.class.argparse_pattern
  unless (@match_data = pat.match(argstring))
    raise(Widgets::InvalidWidgetArguments.new(argstring, pat))
  end

  @match_data.names.each do |name|
    instance_variable_set(:"@#{name}", @match_data[name])
  end
end

Class Method Details

.argparse_patternObject

This method is abstract.

: -> Regexp

Raises:

  • (NotImplementedError)


33
34
35
# File 'lib/cli/ui/widgets/base.rb', line 33

def argparse_pattern
  raise(NotImplementedError)
end

.call(argstring) ⇒ Object

: (String argstring) -> String



13
14
15
# File 'lib/cli/ui/widgets/base.rb', line 13

def call(argstring)
  new(argstring).render
end

Instance Method Details

#renderObject

This method is abstract.

: -> String

Raises:

  • (NotImplementedError)


40
41
42
# File 'lib/cli/ui/widgets/base.rb', line 40

def render
  raise(NotImplementedError)
end