diff options
author | bptato <nincsnevem662@gmail.com> | 2024-05-05 00:07:16 +0200 |
---|---|---|
committer | bptato <nincsnevem662@gmail.com> | 2024-05-05 00:07:16 +0200 |
commit | c06bc25969bc428c3b2a32ee87525737cb5fef9f (patch) | |
tree | 17a90ad69fb3ae89e8923021dca6cfc105809875 /src | |
parent | 698b6002528750a7af0a0df9ccac8e05d6b923c8 (diff) | |
download | chawan-c06bc25969bc428c3b2a32ee87525737cb5fef9f.tar.gz |
Use isSome instead of isOk
no point in having identical overloads
Diffstat (limited to 'src')
-rw-r--r-- | src/config/config.nim | 4 | ||||
-rw-r--r-- | src/css/mediaquery.nim | 2 | ||||
-rw-r--r-- | src/css/values.nim | 10 | ||||
-rw-r--r-- | src/html/dom.nim | 22 | ||||
-rw-r--r-- | src/html/env.nim | 2 | ||||
-rw-r--r-- | src/io/bufwriter.nim | 4 | ||||
-rw-r--r-- | src/io/promise.nim | 2 | ||||
-rw-r--r-- | src/js/javascript.nim | 37 | ||||
-rw-r--r-- | src/js/tojs.nim | 2 | ||||
-rw-r--r-- | src/local/client.nim | 2 | ||||
-rw-r--r-- | src/local/container.nim | 2 | ||||
-rw-r--r-- | src/local/pager.nim | 6 | ||||
-rw-r--r-- | src/main.nim | 2 | ||||
-rw-r--r-- | src/types/opt.nim | 8 |
14 files changed, 49 insertions, 56 deletions
diff --git a/src/config/config.nim b/src/config/config.nim index b38d3129..70f6995e 100644 --- a/src/config/config.nim +++ b/src/config/config.nim @@ -604,7 +604,7 @@ proc parseConfigValue(ctx: var ConfigParser; x: var ChaPathResolved; v: TomlValue; k: string) = typeCheck(v, tvtString, k) let y = ChaPath(v.s).unquote() - if y.isErr: + if y.isNone: raise newException(ValueError, y.error) x = ChaPathResolved(y.get) @@ -707,7 +707,7 @@ proc parseConfig(config: Config; dir: string; t: TomlValue): ParseConfigResult = proc parseConfig(config: Config; dir: string; stream: Stream; name = "<input>"; laxnames = false): ParseConfigResult = let toml = parseToml(stream, dir / name, laxnames) - if toml.isOk: + if toml.isSome: return config.parseConfig(dir, toml.get) else: return ParseConfigResult( diff --git a/src/css/mediaquery.nim b/src/css/mediaquery.nim index 5b033e8e..866f6c89 100644 --- a/src/css/mediaquery.nim +++ b/src/css/mediaquery.nim @@ -256,7 +256,7 @@ template expect_int_range(range: var Slice[int]; ismin, ismax: bool) = template expect_length(length: var CSSLength) = let cval = parser.consume() let r = cssLength(cval) - if r.isErr: + if r.isNone: return nil length = r.get diff --git a/src/css/values.nim b/src/css/values.nim index 7150de59..b696f0e4 100644 --- a/src/css/values.nim +++ b/src/css/values.nim @@ -1335,9 +1335,9 @@ proc parseComputedValues*(res: var seq[CSSComputedEntry]; name: string; for tok in cvals: if tok == cttWhitespace: continue - if (let r = cssImage(tok); r.isOk): + if (let r = cssImage(tok); r.isSome): bgimageval = CSSComputedValue(v: cvtImage, image: r.get) - elif (let r = cssColor(tok); r.isOk): + elif (let r = cssColor(tok); r.isSome): bgcolorval = CSSComputedValue(v: cvtColor, color: r.get) else: #TODO when we implement the other shorthands too @@ -1354,12 +1354,12 @@ proc parseComputedValues*(res: var seq[CSSComputedEntry]; name: string; for tok in cvals: if tok == cttWhitespace: continue - if (let r = parseIdent[CSSListStylePosition](tok); r.isOk): + if (let r = parseIdent[CSSListStylePosition](tok); r.isSome): positionVal = CSSComputedValue( v: cvtListStylePosition, liststyleposition: r.get ) - elif (let r = parseIdent[CSSListStyleType](tok); r.isOk): + elif (let r = parseIdent[CSSListStyleType](tok); r.isSome): typeVal = CSSComputedValue( v: cvtListStyleType, liststyletype: r.get @@ -1436,7 +1436,7 @@ proc parseComputedValues*(res: var seq[CSSComputedEntry]; name: string; proc parseComputedValues*(name: string; value: seq[CSSComponentValue]): seq[CSSComputedEntry] = var res: seq[CSSComputedEntry] = @[] - if res.parseComputedValues(name, value).isOk: + if res.parseComputedValues(name, value).isSome: return res return @[] diff --git a/src/html/dom.nim b/src/html/dom.nim index 739d01fe..7e332574 100644 --- a/src/html/dom.nim +++ b/src/html/dom.nim @@ -2349,10 +2349,10 @@ proc parseColor(element: Element; s: string): ARGBColor = #TODO return element style # For now we just use white. let ec = rgb(255, 255, 255) - if cval.isErr: + if cval.isNone: return ec let color0 = cssColor(cval.get) - if color0.isErr: + if color0.isNone: return ec let color = color0.get if color.t != ctRGB: @@ -2797,16 +2797,16 @@ proc setter[T: uint32|string](this: CSSStyleDeclaration; u: T; value: string) {.jssetprop.} = let cvals = parseComponentValues(value) when u is uint32: - if this.setValue(int(u), cvals).isErr: + if this.setValue(int(u), cvals).isNone: return else: if (let i = this.find(u); i != -1): - if this.setValue(i, cvals).isErr: + if this.setValue(i, cvals).isNone: return else: var dummy: seq[CSSComputedEntry] let val0 = parseComputedValues(dummy, u, cvals) - if val0.isErr: + if val0.isNone: return this.decls.add(CSSDeclaration(name: u, value: cvals)) this.element.attr(satStyle, $this.decls) @@ -2844,13 +2844,13 @@ proc loadResource(window: Window; link: HTMLLinkElement) = let p = loader.fetch( newRequest(url) ).then(proc(res: JSResult[Response]): Promise[JSResult[string]] = - if res.isOk: + if res.isSome: let res = res.get if res.getContentType() == "text/css": return res.text() res.unregisterFun() ).then(proc(s: JSResult[string]) = - if s.isOk: + if s.isSome: #TODO non-utf-8 css? link.sheet = parseStylesheet(s.get, window.factory) window.document.cachedSheetsInvalid = true @@ -2870,13 +2870,13 @@ proc loadResource(window: Window; image: HTMLImageElement) = let loader = window.loader.get let p = loader.fetch(newRequest(url)) .then(proc(res: JSResult[Response]): Promise[JSResult[Blob]] = - if res.isErr: + if res.isNone: return let res = res.get if res.getContentType() == "image/png": return res.blob() ).then(proc(pngData: JSResult[Blob]) = - if pngData.isErr: + if pngData.isNone: return let pngData = pngData.get let buffer = cast[ptr UncheckedArray[uint8]](pngData.buffer) @@ -2903,7 +2903,7 @@ proc reflectEvent(element: Element; target: EventTarget; name: StaticAtom; # directly here, but a wrapper function that calls fun. Currently # you can run removeEventListener with element.onclick, that should # not work. - doAssert ctx.addEventListener(target, ctype, fun).isOk + doAssert ctx.addEventListener(target, ctype, fun).isSome JS_FreeValue(ctx, fun) proc reflectAttrs(element: Element; name: CAtom; value: string) = @@ -4139,7 +4139,7 @@ proc jsReflectSet(ctx: JSContext; this, val: JSValue; magic: cint): JSValue let target = fromJS[EventTarget](ctx, this).get ctx.definePropertyC(this, $entry.attrname, JS_DupValue(ctx, val)) #TODO I haven't checked but this might also be wrong - doAssert ctx.addEventListener(target, entry.ctype, val).isOk + doAssert ctx.addEventListener(target, entry.ctype, val).isSome return JS_DupValue(ctx, val) func getReflectFunctions(tags: set[TagType]): seq[TabGetSet] = diff --git a/src/html/env.nim b/src/html/env.nim index 00b6f18c..8545436f 100644 --- a/src/html/env.nim +++ b/src/html/env.nim @@ -167,7 +167,7 @@ proc setOnLoad(ctx: JSContext; window: Window; val: JSValue) let this = ctx.toJS(window) ctx.definePropertyC(this, "onload", JS_DupValue(ctx, val)) #TODO I haven't checked but this might also be wrong - doAssert ctx.addEventListener(window, "load", val).isOk + doAssert ctx.addEventListener(window, "load", val).isSome JS_FreeValue(ctx, this) proc addScripting*(window: Window; selector: Selector[int]) = diff --git a/src/io/bufwriter.nim b/src/io/bufwriter.nim index 509f2907..20ef1f4c 100644 --- a/src/io/bufwriter.nim +++ b/src/io/bufwriter.nim @@ -175,8 +175,8 @@ proc swrite*[T](writer: var BufferedWriter; o: Option[T]) = writer.swrite(o.get) proc swrite*[T, E](writer: var BufferedWriter; o: Result[T, E]) = - writer.swrite(o.isOk) - if o.isOk: + writer.swrite(o.isSome) + if o.isSome: when not (T is void): writer.swrite(o.get) else: diff --git a/src/io/promise.nim b/src/io/promise.nim index 63ae256f..c675233f 100644 --- a/src/io/promise.nim +++ b/src/io/promise.nim @@ -152,7 +152,7 @@ proc then*[T, U](promise: Promise[T]; cb: (proc(x: T): Opt[Promise[U]])): let next = Promise[Opt[U]]() promise.then(proc(x: T) = let p2 = cb(x) - if p2.isOk: + if p2.isSome: p2.get.then(proc(y: U) = next.res = opt(y) next.resolve()) diff --git a/src/js/javascript.nim b/src/js/javascript.nim index 57baff45..e99dd481 100644 --- a/src/js/javascript.nim +++ b/src/js/javascript.nim @@ -545,22 +545,18 @@ template getJSPropNamesParams(): untyped = ] template fromJS_or_return*(t, ctx, val: untyped): untyped = - ( - let x = fromJS[t](ctx, val) - if x.isErr: - return toJS(ctx, x.error) - x.get - ) + let x = fromJS[t](ctx, val) + if x.isNone: + return toJS(ctx, x.error) + x.get template fromJSP_or_return*(t, ctx, val: untyped): untyped = - ( - let x = fromJSP[t](ctx, val) - if x.isErr: - return toJS(ctx, x.error) - x.get - ) + let x = fromJSP[t](ctx, val) + if x.isNone: + return toJS(ctx, x.error) + x.get -template fromJS_or_die*(t, ctx, val, ev, dl: untyped): untyped = +template fromJS_or_die*(t, ctx, val, dl: untyped): untyped = let x = fromJSP[t](ctx, val) if x.isNone: break dl @@ -568,10 +564,9 @@ template fromJS_or_die*(t, ctx, val, ev, dl: untyped): untyped = proc addParam2(gen: var JSFuncGenerator; s, t, val: NimNode; fallback: NimNode = nil) = - let ev = gen.errval let dl = gen.dielabel let stmt = quote do: - fromJS_or_die(`t`, ctx, `val`, `ev`, `dl`) + fromJS_or_die(`t`, ctx, `val`, `dl`) for i in 0..gen.jsFunCallLists.high: if fallback == nil: gen.jsFunCallLists[i].add(newLetStmt(s, stmt)) @@ -653,7 +648,7 @@ proc addUnionParam0(gen: var JSFuncGenerator; tt, s, val: NimNode; let x = ident("x") let query = quote do: let `x` = fromJS[`t`](ctx, `val`) - `x`.isOk + `x`.isSome gen.addUnionParamBranch(query, quote do: let `s` = `x`.get, fallback) @@ -664,7 +659,7 @@ proc addUnionParam0(gen: var JSFuncGenerator; tt, s, val: NimNode; isSequence(ctx, `val`) let a = seqg.get[1] gen.addUnionParamBranch(query, quote do: - let `s` = fromJS_or_die(seq[`a`], ctx, `val`, `ev`, `dl`), + let `s` = fromJS_or_die(seq[`a`], ctx, `val`, `dl`), fallback) # Record: if tableg.isSome: @@ -673,7 +668,7 @@ proc addUnionParam0(gen: var JSFuncGenerator; tt, s, val: NimNode; let query = quote do: JS_IsObject(`val`) gen.addUnionParamBranch(query, quote do: - let `s` = fromJS_or_die(Table[`a`, `b`], ctx, `val`, `ev`, `dl`), + let `s` = fromJS_or_die(Table[`a`, `b`], ctx, `val`, `dl`), fallback) # Object (JSObject variant): #TODO non-JS objects (i.e. ref object) @@ -681,14 +676,14 @@ proc addUnionParam0(gen: var JSFuncGenerator; tt, s, val: NimNode; let query = quote do: JS_IsObject(`val`) gen.addUnionParamBranch(query, quote do: - let `s` = fromJS_or_die(JSValue, ctx, `val`, `ev`, `dl`), + let `s` = fromJS_or_die(JSValue, ctx, `val`, `dl`), fallback) # 11. If Type(V) is Boolean, then: if hasBoolean: let query = quote do: JS_IsBool(`val`) gen.addUnionParamBranch(query, quote do: - let `s` = fromJS_or_die(bool, ctx, `val`, `ev`, `dl`), + let `s` = fromJS_or_die(bool, ctx, `val`, `dl`), fallback) # 12. If Type(V) is Number, then: if numg.isSome: @@ -696,7 +691,7 @@ proc addUnionParam0(gen: var JSFuncGenerator; tt, s, val: NimNode; let query = quote do: JS_IsNumber(`val`) gen.addUnionParamBranch(query, quote do: - let `s` = fromJS_or_die(`ng`, ctx, `val`, `ev`, `dl`), + let `s` = fromJS_or_die(`ng`, ctx, `val`, `dl`), fallback) # 14. If types includes a string type, then return the result of converting V # to that type. diff --git a/src/js/tojs.nim b/src/js/tojs.nim index bf2af7cc..f625ab98 100644 --- a/src/js/tojs.nim +++ b/src/js/tojs.nim @@ -352,7 +352,7 @@ proc toJS[T, E](ctx: JSContext; promise: Promise[Result[T, E]]): JSValue = if JS_IsException(jsPromise): return JS_EXCEPTION promise.then(proc(x: Result[T, E]) = - if x.isOk: + if x.isSome: let x = when T is void: JS_UNDEFINED else: diff --git a/src/local/client.nim b/src/local/client.nim index c08f88f6..9038488a 100644 --- a/src/local/client.nim +++ b/src/local/client.nim @@ -223,7 +223,7 @@ proc evalAction(client: Client; action: string; arg0: int32): EmptyPromise = client.jsctx.writeException(client.console.err) if JS_IsObject(ret): let maybep = fromJS[EmptyPromise](ctx, ret) - if maybep.isOk: + if maybep.isSome: p = maybep.get JS_FreeValue(ctx, ret) return p diff --git a/src/local/container.nim b/src/local/container.nim index 01fd6e5d..85a855db 100644 --- a/src/local/container.nim +++ b/src/local/container.nim @@ -1418,7 +1418,7 @@ proc extractCookies(response: Response): seq[Cookie] = if "Set-Cookie" in response.headers.table: for s in response.headers.table["Set-Cookie"]: let cookie = newCookie(s, response.url) - if cookie.isOk: + if cookie.isSome: result.add(cookie.get) proc extractReferrerPolicy(response: Response): Option[ReferrerPolicy] = diff --git a/src/local/pager.nim b/src/local/pager.nim index 1c1f0530..3d030b57 100644 --- a/src/local/pager.nim +++ b/src/local/pager.nim @@ -893,7 +893,7 @@ proc applySiteconf(pager: Pager; url: var URL; charsetOverride: Charset; var arg0 = ctx.toJS(url) let ret = JS_Call(ctx, fun, JS_UNDEFINED, 1, arg0.toJSValueArray()) let nu = fromJS[URL](ctx, ret) - if nu.isOk: + if nu.isSome: if nu.get != nil: url = nu.get elif JS_IsException(ret): @@ -1001,7 +1001,7 @@ proc omniRewrite(pager: Pager; s: string): string = let ret = fromJS[string](ctx, jsRet) JS_FreeValue(ctx, jsRet) JS_FreeValue(ctx, arg0) - if ret.isOk: + if ret.isSome: return ret.get pager.alert("Error in substitution of " & $rule.match & " for " & s & ": " & ctx.getExceptionMsg(ret.error)) @@ -1078,7 +1078,7 @@ proc commandMode(pager: Pager; val: bool) {.jsfset.} = pager.command() proc checkRegex(pager: Pager; regex: Result[Regex, string]): Opt[Regex] = - if regex.isErr: + if regex.isNone: pager.alert("Invalid regex: " & regex.error) return err() return ok(regex.get) diff --git a/src/main.nim b/src/main.nim index f2ca217b..b28d6f24 100644 --- a/src/main.nim +++ b/src/main.nim @@ -192,7 +192,7 @@ proc main() = config.css.stylesheet &= ctx.stylesheet block commands: let res = config.initCommands() - if res.isErr: + if res.isNone: stderr.write("Error parsing commands: " & res.error) quit(1) set_cjk_ambiguous(config.display.double_width_ambiguous) diff --git a/src/types/opt.nim b/src/types/opt.nim index cdf69633..acd59164 100644 --- a/src/types/opt.nim +++ b/src/types/opt.nim @@ -73,15 +73,13 @@ template opt*(t: typedesc): auto = err(Result[t, void]) template opt*[T, E: not void](r: Result[T, E]): Opt[T] = - if r.isOk: + if r.isSome: Opt[T].ok(r.get) else: Opt[T].err() -template isOk*(res: Result): bool = res.has -template isErr*(res: Result): bool = not res.has -template isSome*(res: Result): bool = res.isOk -template isNone*(res: Result): bool = res.isErr +template isSome*(res: Result): bool = res.has +template isNone*(res: Result): bool = not res.has func get*[T, E](res: Result[T, E]): T {.inline.} = res.val func get*[T, E](res: var Result[T, E]): var T = res.val func get*[T, E](res: Result[T, E], v: T): T = |