loop = asyncio.get_running_loop()
- port = _get_param(params, "port")
- if not port:
- portdef = _get_param_def("port")
- if portdef:
- port = portdef.compiled
-
+ port = _get_param(params, "port", compiled_default=True)
assert port and "," not in port # assume a libpq default and no multi
ans = await loop.getaddrinfo(
host, int(port), proto=socket.IPPROTO_TCP, type=socket.SOCK_STREAM
return timeout
-def _get_param(params: ConnDict, name: str) -> str | None:
+def _get_param(
+ params: ConnDict, name: str, compiled_default: bool = False
+) -> str | None:
"""
Return a value from a connection string.
if env is not None:
return env
- return None
+ return paramdef.compiled if compiled_default else None
@dataclass