Corrected some code style issues.
9201
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
1
|
# -*- coding: utf-8 -*- |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
2
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
3
|
# Copyright (c) 2022 Detlev Offenbach <detlev@die-offenbachs.de> |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
4
|
# |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
5
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
6
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
7
|
Module implementing some utility functions for setup.cfg creation. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
8
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
9
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
10
|
# |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
11
|
# http://setuptools.readthedocs.io/en/latest/setuptools.html#specifying-values |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
12
|
# |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
13
|
# str - simple string |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
14
|
# list-comma - dangling list or string of comma-separated values |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
15
|
# list-semi - dangling list or string of semicolon-separated values |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
16
|
# bool - True is 1, yes, true |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
17
|
# dict - list-comma where keys are separated from values by = |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
18
|
# |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
19
|
|
9205
|
20
|
|
9201
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
21
|
def _bool2string(value): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
22
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
23
|
Function to convert a bool value to a setup.cfg string. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
24
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
25
|
@param value bool value to be converted |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
26
|
@type bool |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
27
|
@return setup.cfg string |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
28
|
@rtype str |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
29
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
30
|
return "True" if value else "False" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
31
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
32
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
33
|
def _list2string(value): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
34
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
35
|
Function to convert a list value to a setup.cfg string. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
36
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
37
|
@param value list value to be converted |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
38
|
@type list |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
39
|
@return setup.cfg string |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
40
|
@rtype str |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
41
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
42
|
if value: |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
43
|
return "\n{0}".format("\n".join(sorted(filter(None, value)))) |
9205
|
44
|
|
|
45
|
return "" |
9201
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
46
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
47
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
48
|
def _dict2list(value): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
49
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
50
|
Function to convert a dict value to a setup.cfg list string. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
51
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
52
|
@param value dict value to be converted |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
53
|
@type dict |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
54
|
@yield setup.cfg string |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
55
|
@ytype str |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
56
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
57
|
for k, v in value.items(): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
58
|
yield "{0} = {1}".format(k, v) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
59
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
60
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
61
|
def _dict2string(value): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
62
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
63
|
Function to convert a dict value to a setup.cfg string. |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
64
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
65
|
@param value dict value to be converted |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
66
|
@type dict |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
67
|
@return setup.cfg string |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
68
|
@rtype str |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
69
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
70
|
return _list2string(list(_dict2list(value))) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
71
|
|
9205
|
72
|
|
9201
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
73
|
def toString(value): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
74
|
""" |
9205
|
75
|
Function to convert a value to a setup.cfg string. |
9201
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
76
|
|
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
77
|
@param value value to be converted |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
78
|
@type bool, list, set, tuple or dict |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
79
|
@return setup.cfg string |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
80
|
@rtype str |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
81
|
""" |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
82
|
if isinstance(value, bool): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
83
|
return _bool2string(value) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
84
|
if isinstance(value, (list, set, tuple)): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
85
|
return _list2string(value) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
86
|
if isinstance(value, dict): |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
87
|
return _dict2string(value) |
Detlev Offenbach <detlev@die-offenbachs.de>
parents:
diff
changeset
|
88
|
return str(value).rstrip() |