1
0
mirror of https://github.com/weechat/weechat.git synced 2026-06-12 14:14:48 +02:00

core: Fix regex for constants in the Python stub generator

In Python raw strings, newlines can't be escaped with a backslash. If
you do that, both the backslash and the newline become part of the
string. This meant that the regex for constants both started and ended
with a newline which caused every other constant to be skipped.
This commit is contained in:
Trygve Aaberge
2022-03-17 00:33:31 +01:00
committed by Sébastien Helleu
parent 44e0414970
commit 827db6dc31
2 changed files with 23 additions and 7 deletions
+5 -7
View File
@@ -38,16 +38,14 @@ STUB_HEADER = """\
from typing import Dict
"""
CONSTANT_RE = r"""\
`(?P<constant>WEECHAT_[A-Z0-9_]+)` \((?P<type>(string|integer))\)(?: \+)?\
"""
CONSTANT_RE = (
r""" `(?P<constant>WEECHAT_[A-Z0-9_]+)` \((?P<type>(string|integer))\)(?: \+)?"""
)
FUNCTION_RE = r"""\
\[source,python\]
FUNCTION_RE = r"""\[source,python\]
----
# prototype
def (?P<function>\w+)(?P<args>[^)]*)(?P<return>\) -> [^:]+:) \.\.\.\
"""
def (?P<function>\w+)(?P<args>[^)]*)(?P<return>\) -> [^:]+:) \.\.\."""
def print_stub_constants() -> None:
+18
View File
@@ -6,26 +6,44 @@
from typing import Dict
WEECHAT_RC_OK: int
WEECHAT_RC_OK_EAT: int
WEECHAT_RC_ERROR: int
WEECHAT_CONFIG_READ_OK: int
WEECHAT_CONFIG_READ_MEMORY_ERROR: int
WEECHAT_CONFIG_READ_FILE_NOT_FOUND: int
WEECHAT_CONFIG_WRITE_OK: int
WEECHAT_CONFIG_WRITE_ERROR: int
WEECHAT_CONFIG_WRITE_MEMORY_ERROR: int
WEECHAT_CONFIG_OPTION_SET_OK_CHANGED: int
WEECHAT_CONFIG_OPTION_SET_OK_SAME_VALUE: int
WEECHAT_CONFIG_OPTION_SET_ERROR: int
WEECHAT_CONFIG_OPTION_SET_OPTION_NOT_FOUND: int
WEECHAT_CONFIG_OPTION_UNSET_OK_NO_RESET: int
WEECHAT_CONFIG_OPTION_UNSET_OK_RESET: int
WEECHAT_CONFIG_OPTION_UNSET_OK_REMOVED: int
WEECHAT_CONFIG_OPTION_UNSET_ERROR: int
WEECHAT_LIST_POS_SORT: str
WEECHAT_LIST_POS_BEGINNING: str
WEECHAT_LIST_POS_END: str
WEECHAT_HOTLIST_LOW: str
WEECHAT_HOTLIST_MESSAGE: str
WEECHAT_HOTLIST_PRIVATE: str
WEECHAT_HOTLIST_HIGHLIGHT: str
WEECHAT_HOOK_PROCESS_RUNNING: int
WEECHAT_HOOK_PROCESS_ERROR: int
WEECHAT_HOOK_CONNECT_OK: int
WEECHAT_HOOK_CONNECT_ADDRESS_NOT_FOUND: int
WEECHAT_HOOK_CONNECT_IP_ADDRESS_NOT_FOUND: int
WEECHAT_HOOK_CONNECT_CONNECTION_REFUSED: int
WEECHAT_HOOK_CONNECT_PROXY_ERROR: int
WEECHAT_HOOK_CONNECT_LOCAL_HOSTNAME_ERROR: int
WEECHAT_HOOK_CONNECT_GNUTLS_INIT_ERROR: int
WEECHAT_HOOK_CONNECT_GNUTLS_HANDSHAKE_ERROR: int
WEECHAT_HOOK_CONNECT_MEMORY_ERROR: int
WEECHAT_HOOK_CONNECT_TIMEOUT: int
WEECHAT_HOOK_CONNECT_SOCKET_ERROR: int
WEECHAT_HOOK_SIGNAL_STRING: str
WEECHAT_HOOK_SIGNAL_INT: str
WEECHAT_HOOK_SIGNAL_POINTER: str