Class: Saper::Items::URL

Inherits:
Saper::Item show all
Defined in:
lib/saper/items/url.rb

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Saper::Item

#==, [], exists?, inherited, #serialize, subclasses, try, #type, type

Constructor Details

#initialize(url) ⇒ URL

Returns a new instance of URL.



22
23
24
# File 'lib/saper/items/url.rb', line 22

def initialize(url)
  @url = url
end

Class Method Details

.new(item) ⇒ Object



5
6
7
8
9
10
11
12
13
14
# File 'lib/saper/items/url.rb', line 5

def self.new(item)
  super case item
  when Text
    parse(item.to_s)
  when String
    parse(item)
  else
    raise(InvalidItem, item)
  end
end

.parse(string) ⇒ Object



16
17
18
19
20
# File 'lib/saper/items/url.rb', line 16

def self.parse(string)
  unless string =~ /^#{URI::regexp}$/
    raise(InvalidItem, string)
  end
end

Instance Method Details

#to_nativeObject



30
31
32
# File 'lib/saper/items/url.rb', line 30

def to_native
  to_s
end

#to_sObject



26
27
28
# File 'lib/saper/items/url.rb', line 26

def to_s
  @url
end