dshellInterpreter 1.2.4.0__tar.gz → 1.2.5.0__tar.gz
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.
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/utils_interpreter.py +37 -5
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellTokenizer/dshell_keywords.py +41 -40
- {dshellinterpreter-1.2.4.0/dshellInterpreter.egg-info → dshellinterpreter-1.2.5.0}/PKG-INFO +1 -1
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0/dshellInterpreter.egg-info}/PKG-INFO +1 -1
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/setup.py +1 -1
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/__init__.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_channel.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_embed.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_file.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_interaction.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_member.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_message.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_pastbin.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_role.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_ui.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/__init__.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_embed.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_file.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_global.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_list.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_member.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_message.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_numbers.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_permissions.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_string.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_thread.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_type_validation.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/__init__.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/cached_messages.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/dshell_arguments.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/dshell_global_variables.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/dshell_interpreter.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/dshell_iterators.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/dshell_scope.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/errors.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellParser/__init__.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellParser/ast_nodes.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellParser/dshell_parser.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellParser/errors.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellPreProcess/__init__.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellPreProcess/dshell_preprocess.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellTokenizer/__init__.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellTokenizer/dshell_token_type.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellTokenizer/dshell_tokenizer.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/__init__.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/full_import.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/regex_test.py +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/LICENSE +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/README.md +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/dshellInterpreter.egg-info/SOURCES.txt +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/dshellInterpreter.egg-info/dependency_links.txt +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/dshellInterpreter.egg-info/requires.txt +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/dshellInterpreter.egg-info/top_level.txt +0 -0
- {dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/setup.cfg +0 -0
|
@@ -190,7 +190,7 @@ async def eval_expression(tokens: list[Token], interpreter: "DshellInterpreteur"
|
|
|
190
190
|
for token in postfix:
|
|
191
191
|
|
|
192
192
|
if token.type in DTT_DATA:
|
|
193
|
-
stack.append(
|
|
193
|
+
stack.append(token)
|
|
194
194
|
|
|
195
195
|
elif token.type in (DTT.MATHS_OPERATOR, DTT.LOGIC_OPERATOR, DTT.LOGIC_WORD_OPERATOR):
|
|
196
196
|
op = token.value
|
|
@@ -212,14 +212,46 @@ async def eval_expression(tokens: list[Token], interpreter: "DshellInterpreteur"
|
|
|
212
212
|
raise SyntaxError(f"Too many operands for operator '{op}'")
|
|
213
213
|
|
|
214
214
|
operands.reverse()
|
|
215
|
-
result = dshell_operators[op][0](*operands) # call the operator function with the operands
|
|
216
215
|
|
|
217
|
-
stack.append(
|
|
216
|
+
stack.append(await do_operation(op, operands, interpreter, dshell_operators))
|
|
218
217
|
|
|
219
218
|
else:
|
|
220
219
|
raise SyntaxError(f"Unexpected token type: {token.type} - {token.value}")
|
|
221
220
|
|
|
222
221
|
if len(stack) != 1:
|
|
223
|
-
raise SyntaxError(f"Invalid expression: missing operators or operands in expression
|
|
222
|
+
raise SyntaxError(f"Invalid expression: missing operators or operands in expression '{' '.join((str(i.value) for i in tokens))}'")
|
|
224
223
|
|
|
225
|
-
|
|
224
|
+
result = stack[0]
|
|
225
|
+
if isinstance(result, Token):
|
|
226
|
+
result = await interpreter.eval_data_token(result)
|
|
227
|
+
|
|
228
|
+
return result
|
|
229
|
+
|
|
230
|
+
async def do_operation(operator: str,
|
|
231
|
+
operands: list[Token],
|
|
232
|
+
interpreter: "DshellInterpreteur",
|
|
233
|
+
all_operators: dict) -> Any:
|
|
234
|
+
"""
|
|
235
|
+
Do all convertions and operations
|
|
236
|
+
:param operator:
|
|
237
|
+
:param operands:
|
|
238
|
+
:param interpreter:
|
|
239
|
+
:param all_operators: is dshell_operators dictionnary
|
|
240
|
+
:return:
|
|
241
|
+
"""
|
|
242
|
+
|
|
243
|
+
i = 0
|
|
244
|
+
if (nbr_operand_to_translate := all_operators[operator][4]) is not None:
|
|
245
|
+
while i != nbr_operand_to_translate and i < len(operands):
|
|
246
|
+
operands[i] = await interpreter.eval_data_token(operands[i])
|
|
247
|
+
i += 1
|
|
248
|
+
else:
|
|
249
|
+
while i < len(operands):
|
|
250
|
+
operands[i] = await interpreter.eval_data_token(operands[i])
|
|
251
|
+
i += 1
|
|
252
|
+
|
|
253
|
+
result = all_operators[operator][0](*operands)
|
|
254
|
+
if isinstance(result, Token):
|
|
255
|
+
result = await interpreter.eval_data_token(result)
|
|
256
|
+
|
|
257
|
+
return result
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellTokenizer/dshell_keywords.py
RENAMED
|
@@ -167,61 +167,62 @@ dshell_commands: dict[str, Callable] = {
|
|
|
167
167
|
}
|
|
168
168
|
|
|
169
169
|
"""
|
|
170
|
-
Tuple format: (function, precedence, number of operands min, number of operands max
|
|
170
|
+
Tuple format: (function, precedence, number of operands min, number of operands max,
|
|
171
|
+
Optional[index to translate into value])
|
|
171
172
|
"""
|
|
172
173
|
|
|
173
|
-
dshell_mathematical_operators: dict[str, tuple[Callable, int, int, int]] = {
|
|
174
|
-
|
|
175
|
-
r"++": (lambda a: a + 1, 6, 1, 1),
|
|
176
|
-
r"--": (lambda a: a - 1, 6, 1, 1),
|
|
177
|
-
r"**": (lambda a, b: a ** b, 8, 2, 2),
|
|
178
|
-
r"//": (lambda a, b: a // b, 7, 2, 2),
|
|
179
|
-
r">>": (lambda a, b: a >> b, 5, 2, 2),
|
|
180
|
-
r"<<": (lambda a, b: a << b, 5, 2, 2),
|
|
181
|
-
r"^": (lambda a, b: a ^ b, 5, 2, 2),
|
|
182
|
-
r"/": (lambda a, b: a / b, 7, 2, 2),
|
|
183
|
-
r"*": (lambda a, b: a * b, 7, 2, 2),
|
|
184
|
-
r"%": (lambda a, b: a % b, 7, 2, 2),
|
|
185
|
-
r"-": (lambda a, b=None: a-b if b is not None else -a, 6, 1, 2),
|
|
186
|
-
r"+": (lambda a, b: a + b, 6, 2, 2),
|
|
174
|
+
dshell_mathematical_operators: dict[str, tuple[Callable, int, int, int, Optional[int]]] = {
|
|
175
|
+
|
|
176
|
+
r"++": (lambda a: a + 1, 6, 1, 1, None),
|
|
177
|
+
r"--": (lambda a: a - 1, 6, 1, 1, None),
|
|
178
|
+
r"**": (lambda a, b: a ** b, 8, 2, 2, None),
|
|
179
|
+
r"//": (lambda a, b: a // b, 7, 2, 2, None),
|
|
180
|
+
r">>": (lambda a, b: a >> b, 5, 2, 2, None),
|
|
181
|
+
r"<<": (lambda a, b: a << b, 5, 2, 2, None),
|
|
182
|
+
r"^": (lambda a, b: a ^ b, 5, 2, 2, None),
|
|
183
|
+
r"/": (lambda a, b: a / b, 7, 2, 2, None),
|
|
184
|
+
r"*": (lambda a, b: a * b, 7, 2, 2, None),
|
|
185
|
+
r"%": (lambda a, b: a % b, 7, 2, 2, None),
|
|
186
|
+
r"-": (lambda a, b=None: a-b if b is not None else -a, 6, 1, 2, None),
|
|
187
|
+
r"+": (lambda a, b: a + b, 6, 2, 2, None),
|
|
187
188
|
r"..": (lambda a, b: (IntIterator(
|
|
188
189
|
min_iterator=IntNode(a),
|
|
189
190
|
max_iterator=IntNode(b),
|
|
190
191
|
step= IntNode(1 if a <= b else -1))
|
|
191
|
-
), 5, 2, 2)
|
|
192
|
+
), 5, 2, 2, None)
|
|
192
193
|
# warning: ambiguity between unary and binary to be handled in your parser
|
|
193
194
|
|
|
194
195
|
}
|
|
195
196
|
|
|
196
|
-
dshell_logical_word_operators: dict[str, tuple[Callable, int, int, int]] = {
|
|
197
|
-
r"and": (lambda a, b: bool(a and b), 2, 2, 2),
|
|
198
|
-
r"or": (lambda a, b: bool(a or b), 1, 2, 2),
|
|
199
|
-
r"not": (lambda a: not a, 3, 1, 1),
|
|
200
|
-
r"in": (lambda a, b: a in b, 4, 2, 2),
|
|
197
|
+
dshell_logical_word_operators: dict[str, tuple[Callable, int, int, int, Optional[int]]] = {
|
|
198
|
+
r"and": (lambda a, b: bool(a and b), 2, 2, 2, None),
|
|
199
|
+
r"or": (lambda a, b: bool(a or b), 1, 2, 2, None),
|
|
200
|
+
r"not": (lambda a: not a, 3, 1, 1, None),
|
|
201
|
+
r"in": (lambda a, b: a in b, 4, 2, 2, None),
|
|
201
202
|
}
|
|
202
203
|
|
|
203
|
-
dshell_logical_operators: dict[str, tuple[Callable, int, int, int]] = {
|
|
204
|
-
|
|
205
|
-
r"==": (lambda a, b: a == b, 4, 2, 2),
|
|
206
|
-
r"<=": (lambda a, b: a <= b, 4, 2, 2),
|
|
207
|
-
r"=<": (lambda a, b: a <= b, 4, 2, 2),
|
|
208
|
-
r"!=": (lambda a, b: a != b, 4, 2, 2),
|
|
209
|
-
r"=!": (lambda a, b: a != b, 4, 2, 2),
|
|
210
|
-
r">=": (lambda a, b: a >= b, 4, 2, 2),
|
|
211
|
-
r"=>": (lambda a, b: a >= b, 4, 2, 2),
|
|
212
|
-
r"&&": (lambda a, b: a and b, 2, 2, 2),
|
|
213
|
-
r"||": (lambda a, b: a or b, 1, 2, 2),
|
|
214
|
-
r"&": (lambda a, b: a & b, 2, 2, 2),
|
|
215
|
-
r"|": (lambda a, b: a | b, 1, 2, 2),
|
|
216
|
-
r"=": (lambda a, b: a == b, 4, 2, 2),
|
|
217
|
-
r"<": (lambda a, b: a < b, 4, 2, 2),
|
|
218
|
-
r">": (lambda a, b: a > b, 4, 2, 2),
|
|
219
|
-
r"!": (lambda a: not a, 3, 1, 1),
|
|
220
|
-
r"?": (lambda condition,
|
|
204
|
+
dshell_logical_operators: dict[str, tuple[Callable, int, int, int, Optional[int]]] = {
|
|
205
|
+
|
|
206
|
+
r"==": (lambda a, b: a == b, 4, 2, 2, None),
|
|
207
|
+
r"<=": (lambda a, b: a <= b, 4, 2, 2, None),
|
|
208
|
+
r"=<": (lambda a, b: a <= b, 4, 2, 2, None),
|
|
209
|
+
r"!=": (lambda a, b: a != b, 4, 2, 2, None),
|
|
210
|
+
r"=!": (lambda a, b: a != b, 4, 2, 2, None),
|
|
211
|
+
r">=": (lambda a, b: a >= b, 4, 2, 2, None),
|
|
212
|
+
r"=>": (lambda a, b: a >= b, 4, 2, 2, None),
|
|
213
|
+
r"&&": (lambda a, b: a and b, 2, 2, 2, None),
|
|
214
|
+
r"||": (lambda a, b: a or b, 1, 2, 2, None),
|
|
215
|
+
r"&": (lambda a, b: a & b, 2, 2, 2, None),
|
|
216
|
+
r"|": (lambda a, b: a | b, 1, 2, 2, None),
|
|
217
|
+
r"=": (lambda a, b: a == b, 4, 2, 2, None),
|
|
218
|
+
r"<": (lambda a, b: a < b, 4, 2, 2, None),
|
|
219
|
+
r">": (lambda a, b: a > b, 4, 2, 2, None),
|
|
220
|
+
r"!": (lambda a: not a, 3, 1, 1, None),
|
|
221
|
+
r"?": (lambda condition, first, second: first if condition else second, 1, 3, 3, 1),
|
|
221
222
|
#r".": (lambda target, attribute: target.call(attribute) if hasattr(target, attribute) and hasattr(target, 'call') else None, 9, 2, 2), # attribute access operator
|
|
222
223
|
|
|
223
224
|
}
|
|
224
225
|
|
|
225
|
-
dshell_operators: dict[str, tuple[Callable, int, int]] = dshell_logical_operators.copy()
|
|
226
|
+
dshell_operators: dict[str, tuple[Callable, int, int, int, Optional[int]]] = dshell_logical_operators.copy()
|
|
226
227
|
dshell_operators.update(dshell_logical_word_operators)
|
|
227
228
|
dshell_operators.update(dshell_mathematical_operators)
|
|
@@ -5,7 +5,7 @@ with open("README.md", "r") as fh:
|
|
|
5
5
|
|
|
6
6
|
setup(
|
|
7
7
|
name="dshellInterpreter",
|
|
8
|
-
version="1.2.
|
|
8
|
+
version="1.2.5.0",
|
|
9
9
|
author="Chronos",
|
|
10
10
|
author_email="vagabonwalybi@gmail.com",
|
|
11
11
|
description="A Discord bot interpreter for creating custom commands and automations.",
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_channel.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_embed.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_file.py
RENAMED
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_member.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_message.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_pastbin.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_role.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/dshell_ui.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/__init__.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_embed.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_file.py
RENAMED
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DISCORD_COMMANDS/utils/utils_list.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/__init__.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/cached_messages.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellInterpreteur/dshell_scope.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellParser/dshell_parser.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellPreProcess/dshell_preprocess.py
RENAMED
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellTokenizer/dshell_token_type.py
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/Dshell/DshellTokenizer/dshell_tokenizer.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/dshellInterpreter.egg-info/SOURCES.txt
RENAMED
|
File without changes
|
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/dshellInterpreter.egg-info/requires.txt
RENAMED
|
File without changes
|
{dshellinterpreter-1.2.4.0 → dshellinterpreter-1.2.5.0}/dshellInterpreter.egg-info/top_level.txt
RENAMED
|
File without changes
|
|
File without changes
|