l0n0lc 0.8.2__py3-none-any.whl → 0.8.3__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/jit.py CHANGED
@@ -71,6 +71,16 @@ class c函数调用:
71
71
  return f'{self.函数名}({self.参数字符串})'
72
72
 
73
73
 
74
+ class c布尔:
75
+ def __init__(self, v) -> None:
76
+ self.v = v
77
+
78
+ def __str__(self) -> str:
79
+ if self.v:
80
+ return 'true'
81
+ return 'false'
82
+
83
+
74
84
  class py2cpp编译器(ast.NodeVisitor):
75
85
  def __init__(self, 被编译的函数: Callable, c编译器) -> None:
76
86
  self.被编译的函数 = 被编译的函数
@@ -158,6 +168,8 @@ class py2cpp编译器(ast.NodeVisitor):
158
168
 
159
169
  def 获取值(self, value):
160
170
  if isinstance(value, ast.Constant):
171
+ if isinstance(value.value, bool):
172
+ return c布尔(value.value)
161
173
  return value.value
162
174
 
163
175
  if isinstance(value, ast.Name):
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: l0n0lc
3
- Version: 0.8.2
3
+ Version: 0.8.3
4
4
  Summary: 一个将python函数翻译为c++函数并运行的jit编译器
5
5
  Classifier: Programming Language :: Python :: 3
6
6
  Requires-Python: >=3.10
@@ -80,7 +80,8 @@ def test_add(a: int, b: int) -> int:
80
80
  print('test_other_fn', test_other_fn(a, b))
81
81
  print('test编译的函数', test编译的函数(a, b))
82
82
  v = 0
83
- while (1):
83
+ vv = True
84
+ while (vv):
84
85
  py_cin(v)
85
86
  if v > 100:
86
87
  break
@@ -121,22 +122,22 @@ test编译的函数 39
121
122
  ```bash
122
123
  ls -al ./l0n0lcoutput
123
124
  total 96
124
- drwxr-xr-x 2 root root 4096 Sep 12 01:46 .
125
- drwxrwxrwx 11 1000 1000 4096 Sep 12 01:46 ..
126
- -rw-r--r-- 1 root root 1233 Sep 12 01:46 test_add_@3ecbfe0013e83ebc.cpp
127
- -rw-r--r-- 1 root root 246 Sep 12 01:46 test_add_@3ecbfe0013e83ebc.h
128
- -rwxr-xr-x 1 root root 29904 Sep 12 01:46 test_add_@3ecbfe0013e83ebc.so
129
- -rw-r--r-- 1 root root 121 Sep 12 01:46 test_other_fn_@75fdd928ab58a8e3.cpp
130
- -rw-r--r-- 1 root root 93 Sep 12 01:46 test_other_fn_@75fdd928ab58a8e3.h
131
- -rwxr-xr-x 1 root root 15616 Sep 12 01:46 test_other_fn_@75fdd928ab58a8e3.so
132
- -rw-r--r-- 1 root root 185 Sep 12 01:46 test编译的函数_@3bf4501e0408a243.cpp
133
- -rw-r--r-- 1 root root 151 Sep 12 01:46 test编译的函数_@3bf4501e0408a243.h
134
- -rwxr-xr-x 1 root root 15656 Sep 12 01:46 test编译的函数_@3bf4501e0408a243.so
125
+ drwxr-xr-x 2 root root 4096 Sep 16 01:38 .
126
+ drwxrwxrwx 11 1000 1000 4096 Sep 16 01:36 ..
127
+ -rw-r--r-- 1 root root 1252 Sep 16 01:38 test_add_@05ade4b088e9b383.cpp
128
+ -rw-r--r-- 1 root root 246 Sep 16 01:38 test_add_@05ade4b088e9b383.h
129
+ -rwxr-xr-x 1 root root 29904 Sep 16 01:38 test_add_@05ade4b088e9b383.so
130
+ -rw-r--r-- 1 root root 121 Sep 16 01:38 test_other_fn_@75fdd928ab58a8e3.cpp
131
+ -rw-r--r-- 1 root root 93 Sep 16 01:38 test_other_fn_@75fdd928ab58a8e3.h
132
+ -rwxr-xr-x 1 root root 15616 Sep 16 01:38 test_other_fn_@75fdd928ab58a8e3.so
133
+ -rw-r--r-- 1 root root 185 Sep 16 01:36 test编译的函数_@3bf4501e0408a243.cpp
134
+ -rw-r--r-- 1 root root 151 Sep 16 01:36 test编译的函数_@3bf4501e0408a243.h
135
+ -rwxr-xr-x 1 root root 15656 Sep 16 01:36 test编译的函数_@3bf4501e0408a243.so
135
136
 
136
137
  ```
137
- ## 5. test_add_@3ecbfe0013e83ebc.cpp
138
+ ## 5. test_add_@05ade4b088e9b383.cpp
138
139
  ```c++
139
- #include "test_add_@3ecbfe0013e83ebc.h"
140
+ #include "test_add_@05ade4b088e9b383.h"
140
141
  extern "C" int64_t test_add (int64_t a, int64_t b)
141
142
  {
142
143
  if ((a > 1))
@@ -175,7 +176,8 @@ extern "C" int64_t test_add (int64_t a, int64_t b)
175
176
  std::cout<< u8"test_other_fn" << " "<< test_other_fn(a,b) << " "<< std::endl;
176
177
  std::cout<< u8"test编译的函数" << " "<< function_74657374e7bc96e8af91e79a84e587bde695b0(a,b) << " "<< std::endl;
177
178
  auto v = 0;
178
- while (1)
179
+ auto vv = true;
180
+ while (vv)
179
181
  {
180
182
  std::cout << u8"请输入>>>"; std::cin >> v;
181
183
  if ((v > 100))
@@ -193,7 +195,7 @@ extern "C" int64_t test_add (int64_t a, int64_t b)
193
195
  }
194
196
 
195
197
  ```
196
- ## 6. test_add_@3ecbfe0013e83ebc.h
198
+ ## 6. test_add_@05ade4b088e9b383.h
197
199
  ```c++
198
200
  #include "test_other_fn_@75fdd928ab58a8e3.h"
199
201
  #include "test编译的函数_@3bf4501e0408a243.h"
@@ -2,11 +2,11 @@ l0n0lc/StdList.py,sha256=fA6sWAfW2JgDUhQDK2Hlx_PPuSdLwTcCTk5aha4zA-Q,863
2
2
  l0n0lc/StdMap.py,sha256=TIVKqhT078cjLIM0Zlq-TwGFSy-KwOyJe00BLFPVxr8,735
3
3
  l0n0lc/__init__.py,sha256=fUC6TMeN_fEL7HDazrBEdoWOQkXi5uSGZb7LZj6juog,137
4
4
  l0n0lc/c基础处理.py,sha256=FMauoVx4-33JXl4OLpUl1D6NCkLjk6yBH7do9WnT0Wg,5671
5
- l0n0lc/jit.py,sha256=0HFfsFG531wHFwHaEsscJE2RiUe1D9nfutn8CfqWaV4,23676
5
+ l0n0lc/jit.py,sha256=FBGvpIeRINR2QaI4sB6fnsHjAAurHTqk9cJBOzQ_4nk,23936
6
6
  l0n0lc/编译.py,sha256=Ty4gPDHAB1jn8LgnE4w3R06bOAEeYr8iwqahYf6QeHI,2154
7
7
  l0n0lc/通用.py,sha256=O_Y4bbW1WzHCJkibxAy9WGACv-aEZJLG-fEeVBcAbBQ,3649
8
- l0n0lc-0.8.2.dist-info/licenses/LICENSE,sha256=1L-MAjulZ3kpbYwsJtlXpDVITRxykna2Ecg_521YfkA,1093
9
- l0n0lc-0.8.2.dist-info/METADATA,sha256=cBr_CPYia-yx6SsxozjqPETscjmNs6mY_97p38NUlYA,5513
10
- l0n0lc-0.8.2.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
11
- l0n0lc-0.8.2.dist-info/top_level.txt,sha256=Q21D_eEY_-xgRUPwATGp9YDKSBO4w_7MI2MYxQI1aT4,7
12
- l0n0lc-0.8.2.dist-info/RECORD,,
8
+ l0n0lc-0.8.3.dist-info/licenses/LICENSE,sha256=1L-MAjulZ3kpbYwsJtlXpDVITRxykna2Ecg_521YfkA,1093
9
+ l0n0lc-0.8.3.dist-info/METADATA,sha256=e0DJP_v-J92RjhpLItzAeV_qAzcvEtxHEHBQqEwFbjo,5547
10
+ l0n0lc-0.8.3.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
11
+ l0n0lc-0.8.3.dist-info/top_level.txt,sha256=Q21D_eEY_-xgRUPwATGp9YDKSBO4w_7MI2MYxQI1aT4,7
12
+ l0n0lc-0.8.3.dist-info/RECORD,,
File without changes