Mercurial Hosting > luan
comparison src/luan/modules/http/tools/Run.luan @ 1716:b82767112d8e
add String.regex
author | Franklin Schmidt <fschmidt@gmail.com> |
---|---|
date | Sun, 24 Jul 2022 23:43:03 -0600 |
parents | d6ec67fa4a61 |
children |
comparison
equal
deleted
inserted
replaced
1715:ad44e849c60c | 1716:b82767112d8e |
---|---|
2 local error = Luan.error | 2 local error = Luan.error |
3 local load = Luan.load or error() | 3 local load = Luan.load or error() |
4 local Io = require "luan:Io.luan" | 4 local Io = require "luan:Io.luan" |
5 local print = Io.print or error() | 5 local print = Io.print or error() |
6 local String = require "luan:String.luan" | 6 local String = require "luan:String.luan" |
7 local gmatch = String.gmatch or error() | 7 local regex = String.regex or error() |
8 local Http = require "luan:http/Http.luan" | 8 local Http = require "luan:http/Http.luan" |
9 | 9 |
10 | 10 |
11 local Run = {} | 11 local Run = {} |
12 | 12 |
13 local line_regex = regex("([^\n]*)\n|([^\n]+)$") | |
14 | |
13 local function lines(s) | 15 local function lines(s) |
14 local matcher = gmatch(s,"([^\n]*)\n|([^\n]+)$") | 16 local matcher = line_regex.gmatch(s) |
15 return function() | 17 return function() |
16 local m1, m2 = matcher() | 18 local m1, m2 = matcher() |
17 return m1 or m2 | 19 return m1 or m2 |
18 end | 20 end |
19 end | 21 end |