mirror of
https://github.com/github/codeql.git
synced 2026-04-30 19:26:02 +02:00
Initial commit of Python queries and QL libraries.
This commit is contained in:
committed by
Mark Shannon
parent
90c75cd362
commit
5f58824d1b
36
python/ql/src/Metrics/FunctionStatementNestingDepthGood.py
Normal file
36
python/ql/src/Metrics/FunctionStatementNestingDepthGood.py
Normal file
@@ -0,0 +1,36 @@
|
||||
|
||||
# Flatten nesting by using early exits
|
||||
def print_character_codes_early_exit(strings):
|
||||
if strings is None:
|
||||
return
|
||||
for s in strings:
|
||||
if s is None:
|
||||
continue
|
||||
for c in s:
|
||||
print(c + '=' + ord(c))
|
||||
|
||||
|
||||
#Move flow control into its own generator function
|
||||
def print_character_codes_use_gen(strings):
|
||||
for c in gen_chars_in_strings(strings):
|
||||
print(c + '=' + ord(c))
|
||||
|
||||
def gen_chars_in_strings(strings):
|
||||
if strings is None:
|
||||
return
|
||||
for s in strings:
|
||||
if s is None:
|
||||
continue
|
||||
for c in s:
|
||||
yield c
|
||||
|
||||
#Move inner loop into its own function
|
||||
def print_character_codes_in_string(string):
|
||||
if string is not None:
|
||||
for c in string:
|
||||
print(c + '=' + ord(c))
|
||||
|
||||
def print_character_codes_extracted(strings):
|
||||
if strings is not None:
|
||||
for s in strings:
|
||||
print_character_codes_in_string(s)
|
||||
Reference in New Issue
Block a user