l0n0lc 0.1.2__py3-none-any.whl → 0.2.0__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- l0n0lc/__init__.py +2 -2
- l0n0lc/c/345/237/237.py +1 -1
- l0n0lc/c/345/237/272/347/241/200/347/261/273/345/236/213.py +64 -64
- l0n0lc/c/347/261/273/345/236/213/345/237/272/347/241/200.py +18 -18
- {l0n0lc-0.1.2.dist-info → l0n0lc-0.2.0.dist-info}/METADATA +1 -1
- l0n0lc-0.2.0.dist-info/RECORD +13 -0
- l0n0lc-0.1.2.dist-info/RECORD +0 -13
- {l0n0lc-0.1.2.dist-info → l0n0lc-0.2.0.dist-info}/WHEEL +0 -0
- {l0n0lc-0.1.2.dist-info → l0n0lc-0.2.0.dist-info}/licenses/LICENSE +0 -0
- {l0n0lc-0.1.2.dist-info → l0n0lc-0.2.0.dist-info}/top_level.txt +0 -0
l0n0lc/__init__.py
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
from .输出 import 配置输出函数
|
|
2
|
-
from .c类型基础 import
|
|
3
|
-
from .c域 import 花括号,
|
|
2
|
+
from .c类型基础 import c类型基础, c_void, c_void_p, c函数, c结构体, c数组
|
|
3
|
+
from .c域 import 花括号, 如果, 否则, 否则如果, 循环, 输出
|
|
4
4
|
from .c基础类型 import *
|
|
5
5
|
from .c语句 import *
|
|
6
6
|
from .编译 import 编译
|
l0n0lc/c/345/237/237.py
CHANGED
|
@@ -1,191 +1,191 @@
|
|
|
1
1
|
|
|
2
|
-
from .c类型基础 import
|
|
2
|
+
from .c类型基础 import c类型基础
|
|
3
3
|
|
|
4
|
-
class
|
|
4
|
+
class i8(c类型基础):
|
|
5
5
|
类型名 = 'int8_t'
|
|
6
6
|
|
|
7
|
-
class
|
|
7
|
+
class i8_p(c类型基础):
|
|
8
8
|
类型名 = f'int8_t*'
|
|
9
9
|
|
|
10
|
-
class
|
|
10
|
+
class i8_p_p(c类型基础):
|
|
11
11
|
类型名 = f'int8_t**'
|
|
12
12
|
|
|
13
|
-
class
|
|
13
|
+
class i16(c类型基础):
|
|
14
14
|
类型名 = 'int16_t'
|
|
15
15
|
|
|
16
|
-
class
|
|
16
|
+
class i16_p(c类型基础):
|
|
17
17
|
类型名 = f'int16_t*'
|
|
18
18
|
|
|
19
|
-
class
|
|
19
|
+
class i16_p_p(c类型基础):
|
|
20
20
|
类型名 = f'int16_t**'
|
|
21
21
|
|
|
22
|
-
class
|
|
22
|
+
class i32(c类型基础):
|
|
23
23
|
类型名 = 'int32_t'
|
|
24
24
|
|
|
25
|
-
class
|
|
25
|
+
class i32_p(c类型基础):
|
|
26
26
|
类型名 = f'int32_t*'
|
|
27
27
|
|
|
28
|
-
class
|
|
28
|
+
class i32_p_p(c类型基础):
|
|
29
29
|
类型名 = f'int32_t**'
|
|
30
30
|
|
|
31
|
-
class
|
|
31
|
+
class i64(c类型基础):
|
|
32
32
|
类型名 = 'int64_t'
|
|
33
33
|
|
|
34
|
-
class
|
|
34
|
+
class i64_p(c类型基础):
|
|
35
35
|
类型名 = f'int64_t*'
|
|
36
36
|
|
|
37
|
-
class
|
|
37
|
+
class i64_p_p(c类型基础):
|
|
38
38
|
类型名 = f'int64_t**'
|
|
39
39
|
|
|
40
|
-
class
|
|
40
|
+
class u8(c类型基础):
|
|
41
41
|
类型名 = 'uint8_t'
|
|
42
42
|
|
|
43
|
-
class
|
|
43
|
+
class u8_p(c类型基础):
|
|
44
44
|
类型名 = f'uint8_t*'
|
|
45
45
|
|
|
46
|
-
class
|
|
46
|
+
class u8_p_p(c类型基础):
|
|
47
47
|
类型名 = f'uint8_t**'
|
|
48
48
|
|
|
49
|
-
class
|
|
49
|
+
class u16(c类型基础):
|
|
50
50
|
类型名 = 'uint16_t'
|
|
51
51
|
|
|
52
|
-
class
|
|
52
|
+
class u16_p(c类型基础):
|
|
53
53
|
类型名 = f'uint16_t*'
|
|
54
54
|
|
|
55
|
-
class
|
|
55
|
+
class u16_p_p(c类型基础):
|
|
56
56
|
类型名 = f'uint16_t**'
|
|
57
57
|
|
|
58
|
-
class
|
|
58
|
+
class u32(c类型基础):
|
|
59
59
|
类型名 = 'uint32_t'
|
|
60
60
|
|
|
61
|
-
class
|
|
61
|
+
class u32_p(c类型基础):
|
|
62
62
|
类型名 = f'uint32_t*'
|
|
63
63
|
|
|
64
|
-
class
|
|
64
|
+
class u32_p_p(c类型基础):
|
|
65
65
|
类型名 = f'uint32_t**'
|
|
66
66
|
|
|
67
|
-
class
|
|
67
|
+
class u64(c类型基础):
|
|
68
68
|
类型名 = 'uint64_t'
|
|
69
69
|
|
|
70
|
-
class
|
|
70
|
+
class u64_p(c类型基础):
|
|
71
71
|
类型名 = f'uint64_t*'
|
|
72
72
|
|
|
73
|
-
class
|
|
73
|
+
class u64_p_p(c类型基础):
|
|
74
74
|
类型名 = f'uint64_t**'
|
|
75
75
|
|
|
76
|
-
class
|
|
76
|
+
class f32(c类型基础):
|
|
77
77
|
类型名 = 'float'
|
|
78
78
|
|
|
79
|
-
class
|
|
79
|
+
class f32_p(c类型基础):
|
|
80
80
|
类型名 = f'float*'
|
|
81
81
|
|
|
82
|
-
class
|
|
82
|
+
class f32_p_p(c类型基础):
|
|
83
83
|
类型名 = f'float**'
|
|
84
84
|
|
|
85
|
-
class
|
|
85
|
+
class f64(c类型基础):
|
|
86
86
|
类型名 = 'double'
|
|
87
87
|
|
|
88
|
-
class
|
|
88
|
+
class f64_p(c类型基础):
|
|
89
89
|
类型名 = f'double*'
|
|
90
90
|
|
|
91
|
-
class
|
|
91
|
+
class f64_p_p(c类型基础):
|
|
92
92
|
类型名 = f'double**'
|
|
93
93
|
|
|
94
|
-
class
|
|
94
|
+
class bool(c类型基础):
|
|
95
95
|
类型名 = 'bool'
|
|
96
96
|
|
|
97
|
-
class
|
|
97
|
+
class bool_p(c类型基础):
|
|
98
98
|
类型名 = f'bool*'
|
|
99
99
|
|
|
100
|
-
class
|
|
100
|
+
class bool_p_p(c类型基础):
|
|
101
101
|
类型名 = f'bool**'
|
|
102
102
|
|
|
103
|
-
class
|
|
103
|
+
class char(c类型基础):
|
|
104
104
|
类型名 = 'char'
|
|
105
105
|
|
|
106
|
-
class
|
|
106
|
+
class char_p(c类型基础):
|
|
107
107
|
类型名 = f'char*'
|
|
108
108
|
|
|
109
|
-
class
|
|
109
|
+
class char_p_p(c类型基础):
|
|
110
110
|
类型名 = f'char**'
|
|
111
111
|
|
|
112
|
-
class
|
|
112
|
+
class uchar(c类型基础):
|
|
113
113
|
类型名 = 'unsigned char'
|
|
114
114
|
|
|
115
|
-
class
|
|
115
|
+
class uchar_p(c类型基础):
|
|
116
116
|
类型名 = f'unsigned char*'
|
|
117
117
|
|
|
118
|
-
class
|
|
118
|
+
class uchar_p_p(c类型基础):
|
|
119
119
|
类型名 = f'unsigned char**'
|
|
120
120
|
|
|
121
|
-
class
|
|
121
|
+
class int(c类型基础):
|
|
122
122
|
类型名 = 'int'
|
|
123
123
|
|
|
124
|
-
class
|
|
124
|
+
class int_p(c类型基础):
|
|
125
125
|
类型名 = f'int*'
|
|
126
126
|
|
|
127
|
-
class
|
|
127
|
+
class int_p_p(c类型基础):
|
|
128
128
|
类型名 = f'int**'
|
|
129
129
|
|
|
130
|
-
class
|
|
130
|
+
class uint(c类型基础):
|
|
131
131
|
类型名 = 'unsigned int'
|
|
132
132
|
|
|
133
|
-
class
|
|
133
|
+
class uint_p(c类型基础):
|
|
134
134
|
类型名 = f'unsigned int*'
|
|
135
135
|
|
|
136
|
-
class
|
|
136
|
+
class uint_p_p(c类型基础):
|
|
137
137
|
类型名 = f'unsigned int**'
|
|
138
138
|
|
|
139
|
-
class
|
|
139
|
+
class short(c类型基础):
|
|
140
140
|
类型名 = 'short'
|
|
141
141
|
|
|
142
|
-
class
|
|
142
|
+
class short_p(c类型基础):
|
|
143
143
|
类型名 = f'short*'
|
|
144
144
|
|
|
145
|
-
class
|
|
145
|
+
class short_p_p(c类型基础):
|
|
146
146
|
类型名 = f'short**'
|
|
147
147
|
|
|
148
|
-
class
|
|
148
|
+
class ushort(c类型基础):
|
|
149
149
|
类型名 = 'unsigned short'
|
|
150
150
|
|
|
151
|
-
class
|
|
151
|
+
class ushort_p(c类型基础):
|
|
152
152
|
类型名 = f'unsigned short*'
|
|
153
153
|
|
|
154
|
-
class
|
|
154
|
+
class ushort_p_p(c类型基础):
|
|
155
155
|
类型名 = f'unsigned short**'
|
|
156
156
|
|
|
157
|
-
class
|
|
157
|
+
class long(c类型基础):
|
|
158
158
|
类型名 = 'long'
|
|
159
159
|
|
|
160
|
-
class
|
|
160
|
+
class long_p(c类型基础):
|
|
161
161
|
类型名 = f'long*'
|
|
162
162
|
|
|
163
|
-
class
|
|
163
|
+
class long_p_p(c类型基础):
|
|
164
164
|
类型名 = f'long**'
|
|
165
165
|
|
|
166
|
-
class
|
|
166
|
+
class ulong(c类型基础):
|
|
167
167
|
类型名 = 'unsigned long'
|
|
168
168
|
|
|
169
|
-
class
|
|
169
|
+
class ulong_p(c类型基础):
|
|
170
170
|
类型名 = f'unsigned long*'
|
|
171
171
|
|
|
172
|
-
class
|
|
172
|
+
class ulong_p_p(c类型基础):
|
|
173
173
|
类型名 = f'unsigned long**'
|
|
174
174
|
|
|
175
|
-
class
|
|
175
|
+
class longlong(c类型基础):
|
|
176
176
|
类型名 = 'long long'
|
|
177
177
|
|
|
178
|
-
class
|
|
178
|
+
class longlong_p(c类型基础):
|
|
179
179
|
类型名 = f'long long*'
|
|
180
180
|
|
|
181
|
-
class
|
|
181
|
+
class longlong_p_p(c类型基础):
|
|
182
182
|
类型名 = f'long long**'
|
|
183
183
|
|
|
184
|
-
class
|
|
184
|
+
class ulonglong(c类型基础):
|
|
185
185
|
类型名 = 'unsigned long long'
|
|
186
186
|
|
|
187
|
-
class
|
|
187
|
+
class ulonglong_p(c类型基础):
|
|
188
188
|
类型名 = f'unsigned long long*'
|
|
189
189
|
|
|
190
|
-
class
|
|
190
|
+
class ulonglong_p_p(c类型基础):
|
|
191
191
|
类型名 = f'unsigned long long**'
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
from .utils import 十进制转换为其他进制
|
|
2
2
|
from typing import Union, Any, Callable, Type, List
|
|
3
|
-
from .c域 import 输出,
|
|
3
|
+
from .c域 import 输出, c函数域, c_结构体域
|
|
4
4
|
import inspect
|
|
5
5
|
|
|
6
6
|
|
|
7
|
-
class
|
|
7
|
+
class c类型基础:
|
|
8
8
|
_进制字符 = "0123456789abcdefghigklmnopqrstuvwxyzABCDEFGHIGKLMNOPQRSTUVWXYZ"
|
|
9
9
|
变量自增ID = 0
|
|
10
10
|
类型名 = ''
|
|
@@ -12,8 +12,8 @@ class c_类型基础:
|
|
|
12
12
|
|
|
13
13
|
@staticmethod
|
|
14
14
|
def 生成ID():
|
|
15
|
-
ID = '_' + 十进制转换为其他进制(
|
|
16
|
-
|
|
15
|
+
ID = '_' + 十进制转换为其他进制(c类型基础.变量自增ID, len(c类型基础._进制字符), c类型基础._进制字符)
|
|
16
|
+
c类型基础.变量自增ID += 1
|
|
17
17
|
return ID
|
|
18
18
|
|
|
19
19
|
def __init__(
|
|
@@ -23,7 +23,7 @@ class c_类型基础:
|
|
|
23
23
|
是静态变量: Union[bool, None] = False,
|
|
24
24
|
使用等号赋值: bool = False):
|
|
25
25
|
self.类型 = self.__class__.类型名
|
|
26
|
-
self.变量名 = 变量名 or
|
|
26
|
+
self.变量名 = 变量名 or c类型基础.生成ID()
|
|
27
27
|
self.是静态变量 = 是静态变量 # TODO
|
|
28
28
|
self.使用等号赋值 = 使用等号赋值
|
|
29
29
|
self.初始值 = 初始值
|
|
@@ -181,12 +181,12 @@ class c_类型基础:
|
|
|
181
181
|
|
|
182
182
|
|
|
183
183
|
def 创建普通类(类型: str) -> Type:
|
|
184
|
-
class 类(
|
|
184
|
+
class 类(c类型基础):
|
|
185
185
|
类型名 = 类型
|
|
186
186
|
return 类
|
|
187
187
|
|
|
188
188
|
|
|
189
|
-
class c_void(
|
|
189
|
+
class c_void(c类型基础):
|
|
190
190
|
类型名 = 'void'
|
|
191
191
|
|
|
192
192
|
def __init__(self):
|
|
@@ -200,23 +200,23 @@ class c_void(c_类型基础):
|
|
|
200
200
|
pass
|
|
201
201
|
|
|
202
202
|
|
|
203
|
-
class c_void_p(
|
|
203
|
+
class c_void_p(c类型基础):
|
|
204
204
|
类型名 = 'void*'
|
|
205
205
|
|
|
206
206
|
|
|
207
|
-
class 已存在变量(
|
|
207
|
+
class 已存在变量(c类型基础):
|
|
208
208
|
def __init__(self, 变量名: str) -> None:
|
|
209
209
|
self.变量名 = 变量名
|
|
210
210
|
|
|
211
211
|
|
|
212
|
-
def
|
|
212
|
+
def c结构体():
|
|
213
213
|
def 装饰函数(fn: Callable):
|
|
214
214
|
定义 = fn()
|
|
215
215
|
with c_结构体域(fn.__name__):
|
|
216
216
|
for 字段名, (类型, 默认值) in 定义.items():
|
|
217
217
|
类型(默认值, 变量名=字段名, 使用等号赋值=True)
|
|
218
218
|
|
|
219
|
-
class 结构体类(
|
|
219
|
+
class 结构体类(c类型基础):
|
|
220
220
|
类型名 = fn.__name__
|
|
221
221
|
是结构体类 = True
|
|
222
222
|
return 结构体类
|
|
@@ -228,12 +228,12 @@ def 根据signature构建并调用函数(
|
|
|
228
228
|
self_=None,
|
|
229
229
|
前缀: Union[None, str, List[str]] = None):
|
|
230
230
|
sig = inspect.signature(fn)
|
|
231
|
-
with
|
|
231
|
+
with c函数域(fn.__name__, sig.parameters,
|
|
232
232
|
sig.return_annotation, 前缀) as f:
|
|
233
233
|
参数列表 = []
|
|
234
234
|
|
|
235
235
|
for 参数名, 参数 in sig.parameters.items():
|
|
236
|
-
class Temp(
|
|
236
|
+
class Temp(c类型基础):
|
|
237
237
|
类型名 = 参数.annotation.类型名
|
|
238
238
|
是结构体类 = 参数.annotation.是结构体类
|
|
239
239
|
|
|
@@ -248,9 +248,9 @@ def 根据signature构建并调用函数(
|
|
|
248
248
|
return f
|
|
249
249
|
|
|
250
250
|
|
|
251
|
-
def 调用函数域(fn:
|
|
251
|
+
def 调用函数域(fn: c函数域, *args):
|
|
252
252
|
参数字符串 = ', '.join([str(arg) for arg in args])
|
|
253
|
-
ID =
|
|
253
|
+
ID = c类型基础.生成ID()
|
|
254
254
|
if fn.返回类型 == 'void':
|
|
255
255
|
输出(f'{fn.函数名} ({参数字符串});\n')
|
|
256
256
|
return 已存在变量('')
|
|
@@ -259,7 +259,7 @@ def 调用函数域(fn: c_函数域, *args):
|
|
|
259
259
|
return 已存在变量(ID)
|
|
260
260
|
|
|
261
261
|
|
|
262
|
-
def
|
|
262
|
+
def c函数(前缀: Union[None, str, List[str]] = None):
|
|
263
263
|
class 装饰类:
|
|
264
264
|
def __init__(self, fn: Callable) -> None:
|
|
265
265
|
self.函数 = 根据signature构建并调用函数(
|
|
@@ -272,8 +272,8 @@ def c_函数(前缀: Union[None, str, List[str]] = None):
|
|
|
272
272
|
return 装饰类
|
|
273
273
|
|
|
274
274
|
|
|
275
|
-
def
|
|
276
|
-
class c_数组类型(
|
|
275
|
+
def c数组(类型, 长度: int):
|
|
276
|
+
class c_数组类型(c类型基础):
|
|
277
277
|
类型名 = f'{类型.类型名}*'
|
|
278
278
|
数组长度 = 长度
|
|
279
279
|
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
l0n0lc/__init__.py,sha256=FdeyabIdYOFtX2TGIfMfOv43Q7qiEdSvY3oclyzEom8,280
|
|
2
|
+
l0n0lc/c域.py,sha256=CGPObQuo3_u-MSngvzAuYMWStHc_2kY42o_cU12HCxw,3603
|
|
3
|
+
l0n0lc/c基础类型.py,sha256=ZE8_HJbgj2BHbvggal9vUCg1fVzlOzzbs5sSDl2k2J8,3825
|
|
4
|
+
l0n0lc/c类型基础.py,sha256=shcGYqWbSYNj9o8KjswxhCPiZQFMotHxa3Id_zVpDBM,8473
|
|
5
|
+
l0n0lc/c语句.py,sha256=1KuFjBpONO_MWTwQUxa14GFOp1yddPKsY-3-41qGe5Q,1506
|
|
6
|
+
l0n0lc/utils.py,sha256=6OTdWdfwKIAqicSRTFmw-DYLn1xZv-JHC7J9aQffFZQ,1287
|
|
7
|
+
l0n0lc/编译.py,sha256=mN5UoKCuNrUtJYn7cFkU5iSzmMdr8vw8Cz80kiOyZ3w,1971
|
|
8
|
+
l0n0lc/输出.py,sha256=vJ-9cQ9U41-m4oyrDmhSWpsJG8FNtChm4sJ75Fy3m00,317
|
|
9
|
+
l0n0lc-0.2.0.dist-info/licenses/LICENSE,sha256=1L-MAjulZ3kpbYwsJtlXpDVITRxykna2Ecg_521YfkA,1093
|
|
10
|
+
l0n0lc-0.2.0.dist-info/METADATA,sha256=Qj72a9PV0ZgHxMe7awbP8YgNLw1a43mDZUneWGZsyzE,2128
|
|
11
|
+
l0n0lc-0.2.0.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
12
|
+
l0n0lc-0.2.0.dist-info/top_level.txt,sha256=Q21D_eEY_-xgRUPwATGp9YDKSBO4w_7MI2MYxQI1aT4,7
|
|
13
|
+
l0n0lc-0.2.0.dist-info/RECORD,,
|
l0n0lc-0.1.2.dist-info/RECORD
DELETED
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
l0n0lc/__init__.py,sha256=L68TK_0liDW_z02MTr5NWF5v3huyM-dwZsUUfsFePWc,297
|
|
2
|
-
l0n0lc/c域.py,sha256=uxxD5A-wekc2bfdVQGUlyzvaQ30MPVhB6qeVkHrkU14,3604
|
|
3
|
-
l0n0lc/c基础类型.py,sha256=PGkixIWWSVox7j-NQbFH0cqUcgDQjrEKcV5XoWlsWN0,4015
|
|
4
|
-
l0n0lc/c类型基础.py,sha256=xItXb9WFF5wzHE5YNlr94_FpPV0TsY8pchx-qeXy3Z0,8493
|
|
5
|
-
l0n0lc/c语句.py,sha256=1KuFjBpONO_MWTwQUxa14GFOp1yddPKsY-3-41qGe5Q,1506
|
|
6
|
-
l0n0lc/utils.py,sha256=6OTdWdfwKIAqicSRTFmw-DYLn1xZv-JHC7J9aQffFZQ,1287
|
|
7
|
-
l0n0lc/编译.py,sha256=mN5UoKCuNrUtJYn7cFkU5iSzmMdr8vw8Cz80kiOyZ3w,1971
|
|
8
|
-
l0n0lc/输出.py,sha256=vJ-9cQ9U41-m4oyrDmhSWpsJG8FNtChm4sJ75Fy3m00,317
|
|
9
|
-
l0n0lc-0.1.2.dist-info/licenses/LICENSE,sha256=1L-MAjulZ3kpbYwsJtlXpDVITRxykna2Ecg_521YfkA,1093
|
|
10
|
-
l0n0lc-0.1.2.dist-info/METADATA,sha256=MFx2HgdArpw_DHQ-DYkgSIwAlR65SHki4arghB-wLIc,2128
|
|
11
|
-
l0n0lc-0.1.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
12
|
-
l0n0lc-0.1.2.dist-info/top_level.txt,sha256=Q21D_eEY_-xgRUPwATGp9YDKSBO4w_7MI2MYxQI1aT4,7
|
|
13
|
-
l0n0lc-0.1.2.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|