File tree Expand file tree Collapse file tree
vulnerabilities/importers Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -18,5 +18,6 @@ gunicorn>=20.1.0
1818django-environ == 0.4.5
1919defusedxml == 0.7.1
2020license-expression >= 21.6.14
21+ fetchcode >= 0.1.0
2122
2223Markdown == 3.3.4
Original file line number Diff line number Diff line change 1+ from dataclasses import dataclass
2+ import dataclasses
3+ import os
4+ from typing import List
5+ from fetchcode .vcs import fetch_via_vcs
6+
7+ def fork_and_get_dir (url ):
8+ return fetch_via_vcs (url ).dest_dir
9+
10+ def walk_in_directory (dir ):
11+ for root , dirs , files in os .walk (dir ):
12+ for file in files :
13+ yield os .path .join (root , file )
14+
15+ # binary search
16+ def binary_search (lst , item ):
17+ low = 0
18+ high = len (lst ) - 1
19+
20+ while low <= high :
21+ mid = (low + high ) // 2
22+ guess = lst [mid ]
23+ if guess == item :
24+ return mid
25+ if guess > item :
26+ high = mid - 1
27+ else :
28+ low = mid + 1
29+ return None
30+
31+ #bubble sort
32+ def bubble_sort (lst ):
33+ for i in range (len (lst ) - 1 ):
34+ for j in range (len (lst ) - i - 1 ):
35+ if lst [j ] > lst [j + 1 ]:
36+ lst [j ], lst [j + 1 ] = lst [j + 1 ], lst [j ]
37+ return lst
38+
39+ @dataclasses .dataclass (order = True )
40+ class Test :
41+ name : str
42+ number : int
43+ grades : List [str ] = dataclasses .field (default_factory = list )
44+
45+ def __repr__ (self ):
46+ return self .name
47+
48+ def to_dict (self ):
49+ return {
50+ 'name' : self .name ,
51+ 'number' : self .number ,
52+ 'grades' : [grade for grade in self .list_of_grades ]
53+ }
You can’t perform that action at this time.
0 commit comments