<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.agency/index.php?action=history&amp;feed=atom&amp;title=Module%3ARoad_data%2Fparser%2Fhooks</id>
		<title>Module:Road data/parser/hooks - Revision history</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.agency/index.php?action=history&amp;feed=atom&amp;title=Module%3ARoad_data%2Fparser%2Fhooks"/>
		<link rel="alternate" type="text/html" href="https://wiki.agency/index.php?title=Module:Road_data/parser/hooks&amp;action=history"/>
		<updated>2026-05-03T15:24:32Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.30.1</generator>

	<entry>
		<id>https://wiki.agency/index.php?title=Module:Road_data/parser/hooks&amp;diff=3165&amp;oldid=prev</id>
		<title>Admin: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://wiki.agency/index.php?title=Module:Road_data/parser/hooks&amp;diff=3165&amp;oldid=prev"/>
				<updated>2018-11-02T14:48:56Z</updated>
		
		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Revision as of 14:48, 2 November 2018&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	<entry>
		<id>https://wiki.agency/index.php?title=Module:Road_data/parser/hooks&amp;diff=3164&amp;oldid=prev</id>
		<title>Happy5214: Merging in sandbox code</title>
		<link rel="alternate" type="text/html" href="https://wiki.agency/index.php?title=Module:Road_data/parser/hooks&amp;diff=3164&amp;oldid=prev"/>
				<updated>2016-05-19T01:43:33Z</updated>
		
		<summary type="html">&lt;p&gt;Merging in sandbox code&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local p = {}&lt;br /&gt;
&lt;br /&gt;
local parserModuleName = &amp;quot;Module:Road data/parser&amp;quot; -- SANDBOX REFERENCE&lt;br /&gt;
&lt;br /&gt;
function p.split(parameters, args)&lt;br /&gt;
	local route = tonumber(args.route) or 0&lt;br /&gt;
	if route &amp;lt; parameters.split then&lt;br /&gt;
		return parameters.below&lt;br /&gt;
	else&lt;br /&gt;
		return parameters.above&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.splitlen(parameters, args)&lt;br /&gt;
	local route = args.route&lt;br /&gt;
	if #route &amp;lt; parameters.split then&lt;br /&gt;
		return parameters.below&lt;br /&gt;
	else&lt;br /&gt;
		return parameters.above&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.between(parameters, args)&lt;br /&gt;
	local lower = parameters.lower&lt;br /&gt;
	local upper = parameters.upper&lt;br /&gt;
	local route = tonumber(args.route) or 0&lt;br /&gt;
	if route &amp;lt; lower or route &amp;gt;= upper then&lt;br /&gt;
		return parameters.no&lt;br /&gt;
	else&lt;br /&gt;
		return parameters.yes&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.mask(parameters, args)&lt;br /&gt;
	local baseParam = parameters.base&lt;br /&gt;
	local maskedParam = parameters.masked&lt;br /&gt;
	local maskModule = &amp;quot;Module:&amp;quot; .. parameters.mask&lt;br /&gt;
	local mask = mw.loadData(maskModule)&lt;br /&gt;
	args[maskedParam] = mask[args[baseParam]]&lt;br /&gt;
	return parameters.default&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.padroute(parameters, args)&lt;br /&gt;
	local route = args.route&lt;br /&gt;
	local paddedLength = parameters.paddedLength&lt;br /&gt;
	args.paddedRoute = string.format(&amp;quot;%0&amp;quot; .. tostring(paddedLength) .. &amp;quot;d&amp;quot;, route)&lt;br /&gt;
	return parameters.default&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.lowercase(parameters, args)&lt;br /&gt;
	local route = args.route&lt;br /&gt;
	args.lowercase = string.lower(route)&lt;br /&gt;
	return parameters.default&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
For the first element (pattern, action) in .actions such that&lt;br /&gt;
args[.base] begins with pattern, return action.&lt;br /&gt;
If no such element exists, return .default (nil if unspecified).&lt;br /&gt;
]]&lt;br /&gt;
function p.beginswith(parameters, args)&lt;br /&gt;
	local baseParam = parameters.base&lt;br /&gt;
	local actions = parameters.actions&lt;br /&gt;
	local arg = args[baseParam]&lt;br /&gt;
	for pattern,action in pairs(actions) do&lt;br /&gt;
		if mw.ustring.sub(arg, 1, mw.ustring.len(pattern)) == pattern then&lt;br /&gt;
			return action&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return parameters.default&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
--[[&lt;br /&gt;
For the first element (pattern, action) in .actions such that&lt;br /&gt;
require(Module:Road data/parser).parser(args, .entry, .path, .kind)&lt;br /&gt;
matches pattern as a regular expression, return action.&lt;br /&gt;
If no such element exists, return .default (nil if unspecified).&lt;br /&gt;
&lt;br /&gt;
.path and .kind are optional.&lt;br /&gt;
]]&lt;br /&gt;
function p.match(parameters, args)&lt;br /&gt;
	local parserModule = require(parserModuleName)&lt;br /&gt;
	local parser = parserModule.parser&lt;br /&gt;
&lt;br /&gt;
	local entry = parameters.entry&lt;br /&gt;
	local path = parameters.path&lt;br /&gt;
	local kind = parameters.kind&lt;br /&gt;
	local actions = parameters.actions&lt;br /&gt;
	local value = parser(args, entry, path, kind)&lt;br /&gt;
	for pattern,action in pairs(actions) do&lt;br /&gt;
		if mw.ustring.match(value, pattern) then&lt;br /&gt;
			return action&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return parameters.default&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>Happy5214</name></author>	</entry>

	</feed>