30<\/a><\/strong>
31<\/a>
32<\/a>
33<\/a>
34<\/a>
35<\/a>
36<\/a>
37<\/a>
38<\/a><\/pre><\/td>\n class<\/span> <\/span>Router<\/span>
<\/span>
<\/span> <\/span>class<\/span> <\/span>Route<\/span> <\/span>
<\/span> <\/span>attr_accessor<\/span> <\/span>:name<\/span>,<\/span>:path<\/span>
<\/span>
<\/span> <\/span>def<\/span> <\/span>initialize<\/span>(<\/span>name<\/span>,<\/span>path<\/span>)<\/span>
<\/span> <\/span>@name<\/span> <\/span>=<\/span> <\/span>name<\/span>
<\/span> <\/span>@path<\/span> <\/span>=<\/span> <\/span>path<\/span>
<\/span> <\/span>end<\/span>
<\/span>
<\/span> <\/span>def<\/span> <\/span>to_s<\/span>
<\/span> <\/span>"<\/span>#{<\/span>@name<\/span>}<\/span><\/span>--><\/span>#{<\/span>@path<\/span>}<\/span><\/span>"<\/span><\/span>
<\/span> <\/span>end<\/span>
<\/span> <\/span>end<\/span>
<\/span> <\/span>
<\/span> <\/span>attr_accessor<\/span> <\/span>:routes<\/span>
<\/span>
<\/span> <\/span>def<\/span> <\/span>initialize<\/span>(<\/span>&<\/span>block<\/span>)<\/span>
<\/span> <\/span>@routes<\/span> <\/span>=<\/span> <\/span>[<\/span>]<\/span>
<\/span> <\/span>instance_eval<\/span> <\/span>&<\/span>block<\/span>
<\/span> <\/span>end<\/span>
<\/span>
<\/span> <\/span>def<\/span> <\/span>add<\/span>(<\/span>name<\/span>,<\/span>path<\/span>)<\/span>
<\/span> <\/span>@routes<\/span> <\/span><<<\/span> <\/span>Route<\/span>.<\/span>new<\/span>(<\/span>name<\/span>,<\/span>path<\/span>)<\/span>
<\/span> <\/span>end<\/span>
<\/span> <\/span>
<\/span>
<\/span> <\/span>def<\/span> <\/span>default<\/span>(<\/span>path<\/span>)<\/span>
<\/span> <\/span>@routes<\/span> <\/span><<<\/span> <\/span>Route<\/span>.<\/span>new<\/span>(<\/span>:root<\/span>,<\/span>path<\/span>)<\/span>
<\/span> <\/span>end<\/span>
<\/span>
<\/span>end<\/span>
<\/span>
<\/span>router<\/span>=<\/span>Router<\/span>.<\/span>new<\/span> <\/span>do<\/span> <\/span>|<\/span>r<\/span>|<\/span>
<\/span> <\/span>add<\/span> <\/span>:ciao<\/span>,<\/span> <\/span>\'<\/span>/ciao<\/span>\'<\/span><\/span>
<\/span> <\/span>add<\/span> <\/span>:hello<\/span>,<\/span> <\/span>\'<\/span>/hello<\/span>\'<\/span><\/span>
<\/span> <\/span>default<\/span> <\/span>\'<\/span>/<\/span>\'<\/span><\/span>
<\/span>end<\/span><\/pre><\/td>\n<\/tr><\/table>\n\n");
|