Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit d1455c6

Browse files
authored
create new file
1 parent 842d8a9 commit d1455c6

File tree

2 files changed

+100
-1
lines changed

2 files changed

+100
-1
lines changed

‎PDL/package/pdlparse/__init__.py‎

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,3 @@
1-
from parse import scrap_library, get_variable, filter_file, get_strings, get_class, get_type, get_value, get_comments
1+
#https://www.freecodecamp.org/news/build-your-first-python-package/
2+
from parse import scrap_library, get_variable, filter_file, get_strings, get_class, get_type, get_value, get_comments
3+
from library import get_libs, get_lib_info, get_main_lib, read_lib, format_lib

‎PDL/package/pdlparse/library.py‎

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
import os, sys
2+
3+
4+
def get_libs(base_dir):
5+
retlist = []
6+
for r, d, f in os.walk(base_dir):
7+
for file in f:
8+
if '.pdl' in file:
9+
itemobj = os.path.relpath(f'{r}/{file}')
10+
retlist.append(itemobj)
11+
12+
return retlist
13+
14+
15+
def get_lib_info(library):
16+
if not os.path.exists(library):
17+
raise FileNotFoundError(f'ERROR: Package pdlparse cannot find file {library}.')
18+
19+
with open(library, 'r') as file:
20+
file_content = file.read()
21+
if '=' or '{' in file_content:
22+
var_count = 0
23+
class_count = 0
24+
for line in file_content.splitlines():
25+
if '=' in line:
26+
var_count += 1
27+
if '{' in line:
28+
class_count += 1
29+
else:
30+
pass
31+
32+
else:
33+
raise Exception(f'ERROR: Package pdlparse cannot find vars or classes in {library}.')
34+
35+
return f'variable# = {var_count} class# = {class_count}'
36+
37+
38+
def get_main_lib(base_dir):
39+
if not os.path.exists(base_dir):
40+
raise FileNotFoundError(f'ERROR: Package pdlparse cannot find file {base_dir}.')
41+
42+
retlist = []
43+
for r, d, f in os.walk(base_dir):
44+
for file in f:
45+
if 'main' in file:
46+
if '.pdl' in file:
47+
itemobj = os.path.relpath(f'{r}/{file}')
48+
retlist.append(itemobj)
49+
else:
50+
pass
51+
52+
if len(retlist) == 0:
53+
retlist.append('No main library found.')
54+
return retlist
55+
56+
57+
def read_lib(library, aloud=False):
58+
if not os.path.exists(library):
59+
raise FileNotFoundError(f'ERROR: Package pdlparse cannot find file {library}.')
60+
61+
with open(library, 'r') as file:
62+
retlist = []
63+
file_content = file.read()
64+
65+
for line in file_content.splitlines():
66+
if aloud != False:
67+
retlist.append(line)
68+
else:
69+
print(line)
70+
if aloud != False:
71+
return retlist
72+
73+
74+
def format_lib(library):
75+
if not os.path.exists(library):
76+
raise FileNotFoundError(f'ERROR: Package pdlparse cannot find file {library}.')
77+
78+
with open(library, 'r') as file:
79+
file_content = file.read()
80+
81+
for line in file_content.splitlines():
82+
if '}' in line:
83+
index = line.find('}')
84+
if not ';' in line:
85+
with open(library, 'w') as edit:
86+
replacement = file_content.replace('}', '};')
87+
edit.write(replacement)
88+
if '{' in line:
89+
index = line.find('{')
90+
name = line[0:index-1]
91+
if not 'class' in line:
92+
with open(library, 'w') as edit:
93+
replacement = file_content.replace(f'{name}', f'class {name}')
94+
edit.write(replacement)
95+
else:
96+
pass
97+

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /