77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
|
# File 'lib/puppeteer/query_handler_manager.rb', line 77
def detect_query_handler(selector)
unless /^[a-zA-Z]+\// =~ selector
return Result.new(
query_handler: default_handler,
selector: selector,
)
end
chunk = selector.split("/")
name = chunk.shift
updated_selector = chunk.join("/")
query_handler = query_handlers[name.to_sym]
unless query_handler
raise ArgumentError.new("Query set to use \"#{name}\", but no query handler of that name was found")
end
Result.new(
query_handler: query_handler,
selector: updated_selector,
)
end
|