enable style:usages for stdlib tests [backport: 1.6] (#19715)

* enable style:usages for stdlib tests

* freeAddrInfo

* more tests

* importc

* bufSize

* fix more

* => parseSql and renderSql
This commit is contained in:
flywind 2022-04-13 17:53:02 +08:00 • committed by GitHub
commit 98cebad7de
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
42 changed files with 149 additions and 146 deletions

View file

@ -1791,7 +1791,7 @@ template asyncAddrInfoLoop(addrInfo: ptr AddrInfo, fd: untyped,
curAddrInfo = curAddrInfo.ai_next
if curAddrInfo == nil:
freeaddrinfo(addrInfo)
freeAddrInfo(addrInfo)
when shouldCreateFd:
closeUnusedFds()
if lastException != nil:
@ -1807,7 +1807,7 @@ template asyncAddrInfoLoop(addrInfo: ptr AddrInfo, fd: untyped,
try:
curFd = createAsyncNativeSocket(domain, sockType, protocol)
except:
freeaddrinfo(addrInfo)
freeAddrInfo(addrInfo)
closeUnusedFds()
raise getCurrentException()
when defined(windows):
@ -1817,7 +1817,7 @@ template asyncAddrInfoLoop(addrInfo: ptr AddrInfo, fd: untyped,
doConnect(curFd, curAddrInfo).callback = tryNextAddrInfo
curAddrInfo = curAddrInfo.ai_next
else:
freeaddrinfo(addrInfo)
freeAddrInfo(addrInfo)
when shouldCreateFd:
closeUnusedFds(ord(domain))
retFuture.complete(curFd)

View file

@ -648,9 +648,9 @@ proc bindAddr*(socket: AsyncSocket, port = Port(0), address = "") {.
var aiList = getAddrInfo(realaddr, port, socket.domain)
if bindAddr(socket.fd, aiList.ai_addr, aiList.ai_addrlen.SockLen) < 0'i32:
freeaddrinfo(aiList)
freeAddrInfo(aiList)
raiseOSError(osLastError())
freeaddrinfo(aiList)
freeAddrInfo(aiList)
proc hasDataBuffered*(s: AsyncSocket): bool {.since: (1, 5).} =
## Determines whether an AsyncSocket has data buffered.
@ -859,7 +859,7 @@ proc sendTo*(socket: AsyncSocket, address: string, port: Port, data: string,
it = it.ai_next
freeaddrinfo(aiList)
freeAddrInfo(aiList)
if not success:
if lastException != nil:

View file

@ -75,4 +75,4 @@ proc setCookie*(key, value: string, expires: DateTime|Time,
## `Set-Cookie: key=value; Domain=...; ...`
result = setCookie(key, value, domain, path,
format(expires.utc, "ddd',' dd MMM yyyy HH:mm:ss 'GMT'"),
noname, secure, httpOnly, maxAge, sameSite)
noName, secure, httpOnly, maxAge, sameSite)

View file

@ -526,4 +526,4 @@ template withData*[T](s: Selector[T], fd: SocketHandle|int, value, body1,
body2
proc getFd*[T](s: Selector[T]): int =
return s.epollFd.int
return s.epollFD.int

View file

@ -26,27 +26,27 @@ else:
#include <sys/types.h>
#include <unistd.h>"""
type
Fdset {.importc: "fd_set", header: platformHeaders, pure, final.} = object
FdSet {.importc: "fd_set", header: platformHeaders, pure, final.} = object
var
FD_SETSIZE {.importc: "FD_SETSIZE", header: platformHeaders.}: cint
proc IOFD_SET(fd: SocketHandle, fdset: ptr Fdset)
proc IOFD_SET(fd: SocketHandle, fdset: ptr FdSet)
{.cdecl, importc: "FD_SET", header: platformHeaders, inline.}
proc IOFD_CLR(fd: SocketHandle, fdset: ptr Fdset)
proc IOFD_CLR(fd: SocketHandle, fdset: ptr FdSet)
{.cdecl, importc: "FD_CLR", header: platformHeaders, inline.}
proc IOFD_ZERO(fdset: ptr Fdset)
proc IOFD_ZERO(fdset: ptr FdSet)
{.cdecl, importc: "FD_ZERO", header: platformHeaders, inline.}
when defined(windows):
proc IOFD_ISSET(fd: SocketHandle, fdset: ptr Fdset): cint
proc IOFD_ISSET(fd: SocketHandle, fdset: ptr FdSet): cint
{.stdcall, importc: "FD_ISSET", header: platformHeaders, inline.}
proc ioselect(nfds: cint, readFds, writeFds, exceptFds: ptr Fdset,
proc ioselect(nfds: cint, readFds, writeFds, exceptFds: ptr FdSet,
timeout: ptr Timeval): cint
{.stdcall, importc: "select", header: platformHeaders.}
else:
proc IOFD_ISSET(fd: SocketHandle, fdset: ptr Fdset): cint
proc IOFD_ISSET(fd: SocketHandle, fdset: ptr FdSet): cint
{.cdecl, importc: "FD_ISSET", header: platformHeaders, inline.}
proc ioselect(nfds: cint, readFds, writeFds, exceptFds: ptr Fdset,
proc ioselect(nfds: cint, readFds, writeFds, exceptFds: ptr FdSet,
timeout: ptr Timeval): cint
{.cdecl, importc: "select", header: platformHeaders.}

View file

@ -958,12 +958,12 @@ proc parseJson*(s: Stream, filename: string = ""; rawIntegers = false, rawFloats
when defined(js):
from math import `mod`
from std/jsffi import JSObject, `[]`, to
from std/jsffi import JsObject, `[]`, to
from std/private/jsutils import getProtoName, isInteger, isSafeInteger
proc parseNativeJson(x: cstring): JSObject {.importjs: "JSON.parse(#)".}
proc parseNativeJson(x: cstring): JsObject {.importjs: "JSON.parse(#)".}
proc getVarType(x: JSObject, isRawNumber: var bool): JsonNodeKind =
proc getVarType(x: JsObject, isRawNumber: var bool): JsonNodeKind =
result = JNull
case $getProtoName(x) # TODO: Implicit returns fail here.
of "[object Array]": return JArray
@ -982,12 +982,12 @@ when defined(js):
of "[object String]": return JString
else: assert false
proc len(x: JSObject): int =
proc len(x: JsObject): int =
asm """
`result` = `x`.length;
"""
proc convertObject(x: JSObject): JsonNode =
proc convertObject(x: JsObject): JsonNode =
var isRawNumber = false
case getVarType(x, isRawNumber)
of JArray:
@ -1000,7 +1000,7 @@ when defined(js):
if (`x`.hasOwnProperty(property)) {
"""
var nimProperty: cstring
var nimValue: JSObject
var nimValue: JsObject
asm "`nimProperty` = property; `nimValue` = `x`[property];"
result[$nimProperty] = nimValue.convertObject()
asm "}}"

View file

@ -633,8 +633,8 @@ when useNimNetLite:
INET_ADDRSTRLEN = 16
INET6_ADDRSTRLEN = 46 # it's actually 46 in both cases
proc sockAddrToStr(sa: ptr Sockaddr): string {.noinit.} =
let af_family = sa.sa_family
proc sockAddrToStr(sa: ptr SockAddr): string {.noinit.} =
let af_family = sa.sa_family
var nl, v4Slice: cint
var si_addr: ptr InAddr

View file

@ -984,11 +984,11 @@ proc bindAddr*(socket: Socket, port = Port(0), address = "") {.
var aiList = getAddrInfo(realaddr, port, socket.domain)
if bindAddr(socket.fd, aiList.ai_addr, aiList.ai_addrlen.SockLen) < 0'i32:
freeaddrinfo(aiList)
freeAddrInfo(aiList)
var address2: string
address2.addQuoted address
raiseOSError(osLastError(), "address: $# port: $#" % [address2, $port])
freeaddrinfo(aiList)
freeAddrInfo(aiList)
proc acceptAddr*(server: Socket, client: var owned(Socket), address: var string,
flags = {SocketFlag.SafeDisconn},
@ -1745,7 +1745,7 @@ proc sendTo*(socket: Socket, address: string, port: Port, data: pointer,
it = it.ai_next
let osError = osLastError()
freeaddrinfo(aiList)
freeAddrInfo(aiList)
if not success:
raiseOSError(osError)
@ -1960,7 +1960,7 @@ proc dial*(address: string, port: Port,
# network system problem (e.g. not enough FDs), and not an unreachable
# address.
let err = osLastError()
freeaddrinfo(aiList)
freeAddrInfo(aiList)
closeUnusedFds()
raiseOSError(err)
fdPerDomain[ord(domain)] = lastFd
@ -1969,7 +1969,7 @@ proc dial*(address: string, port: Port,
break
lastError = osLastError()
it = it.ai_next
freeaddrinfo(aiList)
freeAddrInfo(aiList)
closeUnusedFds(ord(domain))
if success:
@ -1999,7 +1999,7 @@ proc connect*(socket: Socket, address: string,
else: lastError = osLastError()
it = it.ai_next
freeaddrinfo(aiList)
freeAddrInfo(aiList)
if not success: raiseOSError(lastError)
when defineSsl:
@ -2051,7 +2051,7 @@ proc connectAsync(socket: Socket, name: string, port = Port(0),
it = it.ai_next
freeaddrinfo(aiList)
freeAddrInfo(aiList)
if not success: raiseOSError(lastError)
proc connect*(socket: Socket, address: string, port = Port(0),

View file

@ -1451,7 +1451,7 @@ proc ra(n: SqlNode, s: var SqlWriter) =
s.addKeyw("enum")
rs(n, s)
proc renderSQL*(n: SqlNode, upperCase = false): string =
proc renderSql*(n: SqlNode, upperCase = false): string =
## Converts an SQL abstract syntax tree to its string representation.
var s: SqlWriter
s.buffer = ""
@ -1460,8 +1460,8 @@ proc renderSQL*(n: SqlNode, upperCase = false): string =
return s.buffer
proc `$`*(n: SqlNode): string =
## an alias for `renderSQL`.
renderSQL(n)
## an alias for `renderSql`.
renderSql(n)
proc treeReprAux(s: SqlNode, level: int, result: var string) =
result.add('\n')
@ -1493,7 +1493,7 @@ proc open(p: var SqlParser, input: Stream, filename: string) =
p.tok.literal = ""
getTok(p)
proc parseSQL*(input: Stream, filename: string): SqlNode =
proc parseSql*(input: Stream, filename: string): SqlNode =
## parses the SQL from `input` into an AST and returns the AST.
## `filename` is only used for error messages.
## Syntax errors raise an `SqlParseError` exception.
@ -1504,8 +1504,8 @@ proc parseSQL*(input: Stream, filename: string): SqlNode =
finally:
close(p)
proc parseSQL*(input: string, filename = ""): SqlNode =
proc parseSql*(input: string, filename = ""): SqlNode =
## parses the SQL from `input` into an AST and returns the AST.
## `filename` is only used for error messages.
## Syntax errors raise an `SqlParseError` exception.
parseSQL(newStringStream(input), "")
parseSql(newStringStream(input), "")

View file

@ -1023,7 +1023,7 @@ template eventParser*(pegAst, handlers: untyped): (proc(s: string): int) =
## Symbols declared in an *enter* handler can be made visible in the
## corresponding *leave* handler by annotating them with an *inject* pragma.
proc rawParse(s: string, p: Peg, start: int, c: var Captures): int
{.genSym.} =
{.gensym.} =
# binding from *macros*
bind strVal
@ -1058,7 +1058,7 @@ template eventParser*(pegAst, handlers: untyped): (proc(s: string): int) =
matchOrParse(parseIt)
parseIt(s, p, start, c)
proc parser(s: string): int {.genSym.} =
proc parser(s: string): int {.gensym.} =
# the proc to be returned
var
ms: array[MaxSubpatterns, (int, int)]

View file

@ -30,7 +30,7 @@ when defined(windows):
const
EXCEPTION_ACCESS_VIOLATION = DWORD(0xc0000005'i32)
EXCEPTION_CONTINUE_SEARCH = Long(0)
EXCEPTION_CONTINUE_SEARCH = LONG(0)
type
PEXCEPTION_RECORD = ptr object