You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
development
feature/add-provider-validation
libs_update
master
non-hi-only
weird-chars
subliminal_patch_core_refactor
autonomous
v1.4.6-beta.23
v1.4.6-beta.22
v1.4.6-beta.21
v1.4.6-beta.20
v1.4.6-beta.19
v1.4.6-beta.18
v1.4.6-beta.17
v1.4.6-beta.16
v1.4.6-beta.15
v1.4.6-beta.14
v1.4.6-beta.13
v1.4.6-beta.12
v1.4.6-beta.11
v1.4.6-beta.10
v1.4.6-beta.9
v1.4.6-beta.8
v1.4.6-beta.7
v1.4.6-beta.6
v1.4.6-beta.5
v1.4.6-beta.4
v1.4.6-beta.3
v1.4.6-beta.2
v1.4.6-beta.1
v1.4.6-beta.0
v1.4.5
v1.4.5-beta.8
v1.4.5-beta.7
v1.4.5-beta.6
v1.4.5-beta.5
v1.4.5-beta.4
v1.4.5-beta.3
v1.4.5-beta.2
v1.4.5-beta.1
v1.4.5-beta.0
v1.4.4
v1.4.4-beta.46
v1.4.4-beta.45
v1.4.4-beta.44
v1.4.4-beta.43
v1.4.4-beta.42
v1.4.4-beta.41
v1.4.4-beta.40
v1.4.4-beta.39
v1.4.4-beta.38
v1.4.4-beta.37
v1.4.4-beta.36
v1.4.4-beta.35
v1.4.4-beta.34
v1.4.4-beta.33
v1.4.4-beta.32
v1.4.4-beta.31
v1.4.4-beta.30
v1.4.4-beta.29
v1.4.4-beta.28
v1.4.4-beta.27
v1.4.4-beta.26
v1.4.4-beta.25
v1.4.4-beta.24
v1.4.4-beta.23
v1.4.4-beta.22
v1.4.4-beta.21
v1.4.4-beta.20
v1.4.4-beta.19
v1.4.4-beta.18
v1.4.4-beta.17
v1.4.4-beta.16
v1.4.4-beta.15
v1.4.4-beta.14
v1.4.4-beta.13
v1.4.4-beta.12
v1.4.4-beta.11
v1.4.4-beta.10
v1.4.4-beta.9
v1.4.4-beta.8
v1.4.4-beta.7
v1.4.4-beta.6
v1.4.4-beta.5
v1.4.4-beta.4
v1.4.4-beta.3
v1.4.4-beta.2
v1.4.4-beta.1
v1.4.4-beta.0
v1.4.3
v1.4.3-beta.42
v1.4.3-beta.41
v1.4.3-beta.40
v1.4.3-beta.39
v1.4.3-beta.38
v1.4.3-beta.37
v1.4.3-beta.36
v1.4.3-beta.35
v1.4.3-beta.34
v1.4.3-beta.33
v1.4.3-beta.32
v1.4.3-beta.31
v1.4.3-beta.30
v1.4.3-beta.29
v1.4.3-beta.28
v1.4.3-beta.27
v1.4.3-beta.26
v1.4.3-beta.25
v1.4.3-beta.24
v1.4.3-beta.23
v1.4.3-beta.22
v1.4.3-beta.21
v1.4.3-beta.20
v1.4.3-beta.19
v1.4.3-beta.18
v1.4.3-beta.17
v1.4.3-beta.16
v1.4.3-beta.15
v1.4.3-beta.14
v1.4.3-beta.13
v1.4.3-beta.12
v1.4.3-beta.11
v1.4.3-beta.10
v1.4.3-beta.9
v1.4.3-beta.8
v1.4.3-beta.7
v1.4.3-beta.6
v1.4.3-beta.5
v1.4.3-beta.4
v1.4.3-beta.3
v1.4.3-beta.2
v1.4.3-beta.1
v1.4.3-beta.0
v1.4.2
v1.4.2-beta.7
v1.4.2-beta.6
v1.4.2-beta.5
v1.4.2-beta.4
v1.4.2-beta.3
v1.4.2-beta.2
v1.4.2-beta.1
v1.4.2-beta.0
v1.4.1
v1.4.1-beta.22
v1.4.1-beta.21
v1.4.1-beta.20
v1.4.1-beta.19
v1.4.1-beta.18
v1.4.1-beta.17
v1.4.1-beta.16
v1.4.1-beta.15
v1.4.1-beta.14
v1.4.1-beta.13
v1.4.1-beta.12
v1.4.1-beta.11
v1.4.1-beta.10
v1.4.1-beta.9
v1.4.1-beta.8
v1.4.1-beta.7
v1.4.1-beta.6
v1.4.1-beta.5
v1.4.1-beta.4
v1.4.1-beta.3
v1.4.1-beta.2
v1.4.1-beta.1
v1.4.1-beta.0
v1.4.0
v1.3.2-beta.16
v1.3.2-beta.15
v1.3.2-beta.14
v1.3.2-beta.13
v1.3.2-beta.12
v1.3.2-beta.11
v1.3.2-beta.10
v1.3.2-beta.9
v1.3.2-beta.8
v1.3.2-beta.7
v1.3.2-beta.6
v1.3.2-beta.5
v1.3.2-beta.4
v1.3.2-beta.3
v1.3.2-beta.2
v1.3.2-beta.1
v1.3.2-beta.0
v1.3.1
v1.3.1-beta.11
v1.3.1-beta.10
v1.3.1-beta.9
v1.3.1-beta.8
v1.3.1-beta.7
v1.3.1-beta.6
v1.3.1-beta.5
v1.3.1-beta.4
v1.3.1-beta.3
v1.3.1-beta.2
v1.3.1-beta.1
v1.3.1-beta.0
v1.3.0
v1.2.5-beta.26
v1.2.5-beta.25
v1.2.5-beta.24
v1.2.5-beta.23
v1.2.5-beta.22
v1.2.5-beta.21
v1.2.5-beta.20
v1.2.5-beta.19
v1.2.5-beta.18
v1.2.5-beta.17
v1.2.5-beta.16
v1.2.5-beta.15
v1.2.5-beta.14
v1.2.5-beta.13
v1.2.5-beta.12
v1.2.5-beta.11
v1.2.5-beta.10
v1.2.5-beta.9
v1.2.5-beta.8
v1.2.5-beta.7
v1.2.5-beta.6
v1.2.5-beta.5
v1.2.5-beta.4
v1.2.5-beta.3
v1.2.5-beta.2
v1.2.5-beta.1
v1.2.5-beta.0
v1.2.4
v1.2.4-beta.1
v1.2.4-beta.0
v1.2.3
v1.2.3-beta.3
v1.2.3-beta.2
v1.2.3-beta.1
v1.2.3-beta.0
v1.2.2
v1.2.2-beta.26
v1.2.2-beta.25
v1.2.2-beta.24
v1.2.2-beta.23
v1.2.2-beta.22
v1.2.2-beta.21
v1.2.2-beta.20
v1.2.2-beta.19
v1.2.2-beta.18
v1.2.2-beta.17
v1.2.2-beta.16
v1.2.2-beta.15
v1.2.2-beta.14
v1.2.2-beta.13
v1.2.2-beta.12
v1.2.2-beta.11
v1.2.2-beta.10
v1.2.2-beta.9
v1.2.2-beta.8
v1.2.2-beta.7
v1.2.2-beta.6
v1.2.2-beta.5
v1.2.2-beta.4
v1.2.2-beta.3
v1.2.2-beta.2
v1.2.2-beta.1
v1.2.2-beta.0
v1.2.1
v1.2.1-beta.19
v1.2.1-beta.18
v1.2.1-beta.17
v1.2.1-beta.16
v1.2.1-beta.15
v1.2.1-beta.14
v1.2.1-beta.13
v1.2.1-beta.12
v1.2.1-beta.11
v1.2.1-beta.10
v1.2.1-beta.9
v1.2.1-beta.8
v1.2.1-beta.7
v1.2.1-beta.6
v1.2.1-beta.5
v1.2.1-beta.4
v1.2.1-beta.3
v1.2.1-beta.2
v1.2.1-beta.1
v1.2.1-beta.0
v1.2.0
v1.1.5-beta.27
v1.1.5-beta.26
v1.1.5-beta.25
v1.1.5-beta.24
v1.1.5-beta.23
v1.1.5-beta.22
v1.1.5-beta.21
v1.1.5-beta.20
v1.1.5-beta.19
v1.1.5-beta.18
v1.1.5-beta.17
v1.1.5-beta.16
v1.1.5-beta.15
v1.1.5-beta.14
v1.1.5-beta.13
v1.1.5-beta.12
v1.1.5-beta.11
v1.1.5-beta.10
v1.1.5-beta.9
v1.1.5-beta.8
v1.1.5-beta.7
v1.1.5-beta.6
v1.1.5-beta.5
v1.1.5-beta.4
v1.1.5-beta.3
v1.1.5-beta.2
v1.1.5-beta.1
v1.1.5-beta.0
v1.1.4
v1.1.4-beta.9
v1.1.4-beta.8
v1.1.4-beta.7
v1.1.4-beta.6
v1.1.4-beta.5
v1.1.4-beta.4
v1.1.4-beta.3
v1.1.4-beta.2
v1.1.4-beta.1
v1.1.4-beta.0
v1.1.3
v1.1.3-beta.28
v1.1.3-beta.27
v1.1.3-beta.26
v1.1.3-beta.25
v1.1.3-beta.24
v1.1.3-beta.23
v1.1.3-beta.22
v1.1.3-beta.21
v1.1.3-beta.20
v1.1.3-beta.19
v1.1.3-beta.18
v1.1.3-beta.17
v1.1.3-beta.16
v1.1.3-beta.15
v1.1.3-beta.14
v1.1.3-beta.13
v1.1.3-beta.12
v1.1.3-beta.11
v1.1.3-beta.10
v1.1.3-beta.9
v1.1.3-beta.8
v1.1.3-beta.7
v1.1.3-beta.6
v1.1.3-beta.5
v1.1.3-beta.4
v1.1.3-beta.3
v1.1.3-beta.2
v1.1.3-beta.1
v1.1.3-beta.0
v1.1.2
v1.1.2-beta.23
v1.1.2-beta.22
v1.1.2-beta.21
v1.1.2-beta.20
v1.1.2-beta.19
v1.1.2-beta.18
v1.1.2-beta.17
v1.1.2-beta.16
v1.1.2-beta.15
v1.1.2-beta.14
v1.1.2-beta.13
v1.1.2-beta.12
v1.1.2-beta.11
v1.1.2-beta.10
v1.1.2-beta.9
v1.1.2-beta.8
v1.1.2-beta.7
v1.1.2-beta.6
v1.1.2-beta.5
v1.1.2-beta.4
v1.1.2-beta.3
v1.1.2-beta.2
v1.1.2-beta.1
v1.1.2-beta.0
v1.1.1
v1.1.1-beta.20
v1.1.1-beta.19
v1.1.1-beta.18
v1.1.1-beta.17
v1.1.1-beta.16
v1.1.1-beta.15
v1.1.1-beta.14
v1.1.1-beta.13
v1.1.1-beta.12
v1.1.1-beta.11
v1.1.1-beta.10
v1.1.1-beta.9
v1.1.1-beta.8
v1.1.1-beta.7
v1.1.1-beta.6
v1.1.1-beta.5
v1.1.1-beta.4
v1.1.1-beta.3
v1.1.1-beta.2
v1.1.1-beta.1
v1.1.1-beta.0
v1.1.0
v1.0.5-beta.39
v1.0.5-beta.38
v1.0.5-beta.37
v1.0.5-beta.36
v1.0.5-beta.35
v1.0.5-beta.34
v1.0.5-beta.33
v1.0.5-beta.32
v1.0.5-beta.31
v1.0.5-beta.30
v1.0.5-beta.29
v1.0.5-beta.28
v1.0.5-beta.27
v1.0.5-beta.26
v1.0.5-beta.25
v1.0.5-beta.24
v1.0.5-beta.23
v1.0.5-beta.22
v1.0.5-beta.21
v1.0.5-beta.20
v1.0.5-beta.19
v1.0.5-beta.18
v1.0.5-beta.17
v1.0.5-beta.16
v1.0.5-beta.15
v1.0.5-beta.14
v1.0.5-beta.13
v1.0.5-beta.12
v1.0.5-beta.11
v1.0.5-beta.10
v1.0.5-beta.9
v1.0.5-beta.8
v1.0.5-beta.7
v1.0.5-beta.6
v1.0.5-beta.5
v1.0.5-beta.4
v1.0.5-beta.3
v1.0.5-beta.2
v1.0.5-beta.1
v1.0.5-beta.0
v1.0.4
v1.0.4-beta.30
v1.0.4-beta.29
v1.0.4-beta.28
v1.0.4-beta.27
v1.0.4-beta.26
v1.0.4-beta.25
v1.0.4-beta.24
v1.0.4-beta.23
v1.0.4-beta.22
v1.0.4-beta.21
v1.0.4-beta.20
v1.0.4-beta.19
v1.0.4-beta.18
v1.0.4-beta.17
v1.0.4-beta.16
v1.0.4-beta.15
v1.0.4-beta.14
v1.0.4-beta.13
v1.0.4-beta.12
v1.0.4-beta.11
v1.0.4-beta.10
v1.0.4-beta.9
v1.0.4-beta.8
v1.0.4-beta.7
v1.0.4-beta.6
v1.0.4-beta.5
v1.0.4-beta.4
v1.0.4-beta.3
v1.0.4-beta.2
v1.0.4-beta.1
v1.0.4-beta.0
v1.0.3
v1.0.3-beta.33
v1.0.3-beta.32
v1.0.3-beta.31
v1.0.3-beta.30
v1.0.3-beta.29
v1.0.3-beta.28
v1.0.3-beta.27
v1.0.3-beta.26
v1.0.3-beta.25
v1.0.3-beta.24
v1.0.3-beta.23
v1.0.3-beta.22
v1.0.3-beta.21
v1.0.3-beta.20
v1.0.3-beta.19
v1.0.3-beta.18
v1.0.3-beta.17
v1.0.3-beta.16
v1.0.3-beta.15
v1.0.3-beta.14
v1.0.3-beta.13
v1.0.3-beta.12
v1.0.3-beta.11
v1.0.3-beta.10
v1.0.3-beta.9
v1.0.3-beta.8
v1.0.3-beta.7
v1.0.3-beta.6
v1.0.3-beta.5
v1.0.3-beta.4
v1.0.3-beta.3
v1.0.3-beta.2
v1.0.3-beta.1
v1.0.3-beta.0
v1.0.2
v1.0.2-beta.15
v1.0.2-beta.14
v1.0.2-beta.13
v1.0.2-beta.12
v1.0.2-beta.11
v1.0.2-beta.10
v1.0.2-beta.9
v1.0.2-beta.8
v1.0.2-beta.7
v1.0.2-beta.6
v1.0.2-beta.5
v1.0.2-beta.4
v1.0.2-beta.3
v1.0.2-beta.2
v1.0.2-beta.1
v1.0.2-beta.0
v1.0.1
v1.0.1-beta.14
v1.0.1-beta.13
v1.0.1-beta.12
v1.0.1-beta.11
v1.0.1-beta.10
v1.0.1-beta.9
v1.0.1-beta.8
v1.0.1-beta.7
v1.0.1-beta.6
v1.0.1-beta.5
v1.0.1-beta.4
v1.0.1-beta.3
v1.0.1-beta.2
v1.0.1-beta.1
v1.0.1-beta.0
v1.0.0
v0.9.10-beta.13
v0.9.10-beta.12
v0.9.10-beta.11
v0.9.10-beta.10
v0.9.10-beta.9
v0.9.10-beta.8
v0.9.10-beta.7
v0.9.10-beta.6
v0.9.10-beta.5
v0.9.10-beta.4
v0.9.10-beta.3
v0.9.10-beta.2
v0.9.10-beta.1
v0.9.10-beta.0
v0.9.9
v0.9.9-beta.4
v0.9.9-beta.3
v0.9.9-beta.2
v0.9.9-beta.1
v0.9.9-beta.0
v0.9.8
v0.9.8-beta.12
v0.9.8-beta.11
v0.9.8-beta.10
v0.9.8-beta.9
v0.9.8-beta.8
v0.9.8-beta.7
v0.9.8-beta.6
v0.9.8-beta.5
v0.9.8-beta.4
v0.9.8-beta.3
v0.9.8-beta.2
v0.9.8-beta.1
v0.9.8-beta.0
v0.9.7
v0.9.7-beta.18
v0.9.7-beta.17
v0.9.7-beta.16
v0.9.7-beta.15
v0.9.7-beta.14
v0.9.7-beta.13
v0.9.7-beta.12
v0.9.7-beta.11
v0.9.7-beta.10
v0.9.7-beta.9
v0.9.7-beta.8
v0.9.7-beta.7
v0.9.7-beta.6
v0.9.7-beta.5
v0.9.7-beta.4
v0.9.7-beta.3
v0.9.7-beta.2
v0.9.7-beta.1
v0.9.7-beta.0
v0.9.6
v0.9.6-beta.43
v0.9.6-beta.42
v0.9.6-beta.41
v0.9.6-beta.40
v0.9.6-beta.39
v0.9.6-beta.38
v0.9.6-beta.37
v0.9.6-beta.36
v0.9.6-beta.35
v0.9.6-beta.34
v0.9.6-beta.33
v0.9.6-beta.32
v0.9.6-beta.31
v0.9.6-beta.30
v0.9.6-beta.29
v0.9.6-beta.28
v0.9.6-beta.27
v0.9.6-beta.26
v0.9.6-beta.25
v0.9.6-beta.24
v0.9.6-beta.23
v0.9.6-beta.22
v0.9.6-beta.21
v0.9.6-beta.20
v0.9.6-beta.19
v0.9.6-beta.18
v0.9.6-beta.17
v0.9.6-beta.16
v0.9.6-beta.15
v0.9.6-beta.14
v0.9.6-beta.13
v0.9.6-beta.12
v0.9.6-beta.11
v0.9.6-beta.10
v0.9.6-beta.9
v0.9.6-beta.8
v0.9.6-beta.7
v0.9.6-beta.6
v0.9.6-beta.5
v0.9.6-beta.4
v0.9.6-beta.3
v0.9.6-beta.2
v0.9.6-beta.1
v0.9.6-beta.0
v0.9.5
v0.9.5-beta.14
v0.9.5-beta.13
v0.9.5-beta.12
v0.9.5-beta.11
v0.9.5-beta.10
v0.9.5-beta.9
v0.9.5-beta.8
v0.9.5-beta.7
v0.9.5-beta.6
v0.9.5-beta.5
v0.9.5-beta.4
v0.9.5-beta.3
v0.9.5-beta.2
v0.9.5-beta.1
v0.9.5-beta.0
v0.9.4
v0.9.4-beta.30
v0.9.4-beta.29
v0.9.4-beta.28
v0.9.4-beta.27
v0.9.4-beta.26
v0.9.4-beta.25
v0.9.4-beta.24
v0.9.4-beta.23
v0.9.4-beta.22
v0.9.4-beta.21
v0.9.4-beta.20
v0.9.4-beta.19
v0.9.4-beta.18
v0.9.4-beta.17
v0.9.4-beta.16
v0.9.4-beta.15
v0.9.4-beta.13
v0.9.4-beta.12
v0.9.4-beta.11
v0.9.4-beta.10
v0.9.4-beta.9
0.9.4-beta.8
0.9.4-beta.7
0.9.4-beta.6
v0.9.4-beta.6
v0.9.4-beta.5
v0.9.4-beta.4
v0.9.4-beta.3
v0.9.4-beta.2
v0.9.4-beta.1
v0.9.4-beta.0
v0.9.3
v0.9.3-beta.20
v0.9.3-beta.19
v0.9.3-beta.18
v0.9.3-beta.17
v0.9.3-beta.16
v0.9.3-beta.15
v0.9.3-beta.14
v0.9.3-beta.13
v0.9.3-beta.12
v0.9.3-beta.11
v0.9.3-beta.10
v0.9.3-beta.9
v0.9.3-beta.8
v0.9.3-beta.7
v0.9.3-beta.6
v0.9.3-beta.5
v0.9.3-beta.4
v0.9.3-beta.3
v0.9.3-beta.2
v0.9.3-beta.1
v0.9.3-beta.0
v0.9.2
v0.9.2-beta.1
v0.9.2-beta.0
V0.6.6
V0.6.7.1
v0.6.0
v0.6.1
v0.6.2
v0.6.3
v0.6.4
v0.6.5
v0.6.6.1
v0.6.6.2
v0.6.6.3
v0.6.7
v0.6.8
v0.6.9
v0.6.9.1
v0.7.0
v0.7.0.1
v0.7.0.2
v0.7.0.3
v0.7.0.4
v0.7.0.5
v0.7.1
v0.7.2
v0.7.2.1
v0.7.3
v0.7.4
v0.7.5
v0.7.5.1
v0.8
v0.8.1
v0.8.2
v0.8.2.1
v0.8.2.2
v0.8.2.3
v0.8.2.4
v0.8.3
v0.8.3.1
v0.8.3.2
v0.8.3.3
v0.8.3.4
v0.8.4
v0.8.4.1
v0.8.4.2
v0.8.4.3
v0.8.4.4
v0.9
v0.9.0.1
v0.9.0.2
v0.9.0.3
v0.9.0.4
v0.9.0.5
v0.9.0.6
v0.9.0.7
v0.9.0.8
v0.9.1
v0.9.1.1
${ noResults }
32 lines
1.6 KiB
32 lines
1.6 KiB
from __future__ import annotations
|
|
from datetime import date,datetime,time,timedelta,timezone,tzinfo
|
|
from functools import lru_cache
|
|
import re
|
|
from typing import Any
|
|
from._types import ParseFloat
|
|
_TIME_RE_STR='([01][0-9]|2[0-3]):([0-5][0-9]):([0-5][0-9])(?:\\.([0-9]{1,6})[0-9]*)?'
|
|
RE_NUMBER=re.compile('\n0\n(?:\n x[0-9A-Fa-f](?:_?[0-9A-Fa-f])* # hex\n |\n b[01](?:_?[01])* # bin\n |\n o[0-7](?:_?[0-7])* # oct\n)\n|\n[+-]?(?:0|[1-9](?:_?[0-9])*) # dec, integer part\n(?P<floatpart>\n (?:\\.[0-9](?:_?[0-9])*)? # optional fractional part\n (?:[eE][+-]?[0-9](?:_?[0-9])*)? # optional exponent part\n)\n',flags=re.VERBOSE)
|
|
RE_LOCALTIME=re.compile(_TIME_RE_STR)
|
|
RE_DATETIME=re.compile(f"""
|
|
([0-9]{{4}})-(0[1-9]|1[0-2])-(0[1-9]|[12][0-9]|3[01]) # date, e.g. 1988-10-27
|
|
(?:
|
|
[Tt ]
|
|
{_TIME_RE_STR}
|
|
(?:([Zz])|([+-])([01][0-9]|2[0-3]):([0-5][0-9]))? # optional time offset
|
|
)?
|
|
""",flags=re.VERBOSE)
|
|
def match_to_datetime(match):
|
|
H,I,J,B,K,L,C,M,D,N,O=match.groups();E,F,G=int(H),int(I),int(J)
|
|
if B is None:return date(E,F,G)
|
|
P,Q,R=int(B),int(K),int(L);S=int(C.ljust(6,'0'))if C else 0
|
|
if D:A=cached_tz(N,O,D)
|
|
elif M:A=timezone.utc
|
|
else:A=None
|
|
return datetime(E,F,G,P,Q,R,S,tzinfo=A)
|
|
@lru_cache(maxsize=None)
|
|
def cached_tz(hour_str,minute_str,sign_str):A=1 if sign_str=='+'else-1;return timezone(timedelta(hours=A*int(hour_str),minutes=A*int(minute_str)))
|
|
def match_to_localtime(match):B,C,D,A=match.groups();E=int(A.ljust(6,'0'))if A else 0;return time(int(B),int(C),int(D),E)
|
|
def match_to_number(match,parse_float):
|
|
A=match
|
|
if A.group('floatpart'):return parse_float(A.group())
|
|
return int(A.group(),0) |