@@ -26,7 +26,7 @@ import sys
2626
2727from pyard .constants import VALID_REDUCTION_TYPES
2828import pyard .misc
29- from pyard .exceptions import InvalidAlleleError , InvalidTypingError
29+ from pyard .exceptions import InvalidAlleleError , InvalidTypingError , InvalidMACError
3030from pyard .misc import get_data_dir , get_imgt_version
3131
3232if __name__ == "__main__" :
@@ -70,6 +70,12 @@ if __name__ == "__main__":
7070 help = "Validate the provided GL String" ,
7171 )
7272 parser .add_argument ("--cwd" , dest = "cwd" , help = "Perform CWD redux" )
73+ parser .add_argument (
74+ "--expand-mac" , dest = "expand_mac" , help = "Expand MAC to Allele List"
75+ )
76+ parser .add_argument (
77+ "--lookup-mac" , dest = "lookup_mac" , help = "Lookup MAC for an Allele List"
78+ )
7379
7480 args = parser .parse_args ()
7581
@@ -89,6 +95,24 @@ if __name__ == "__main__":
8995 print (f"{ mapping [0 ]} = { '/' .join (mapping [1 ])} " )
9096 sys .exit (0 )
9197
98+ # Handle --expand-mac option
99+ if args .expand_mac :
100+ try :
101+ allele_list = ard .expand_mac (args .expand_mac )
102+ print (allele_list )
103+ except InvalidMACError as e :
104+ print (e .message , file = sys .stderr )
105+ sys .exit (0 )
106+
107+ # Handle --lookup-mac option
108+ if args .lookup_mac :
109+ try :
110+ mac = ard .lookup_mac (args .lookup_mac )
111+ print (mac )
112+ except InvalidMACError as e :
113+ print (e .message , file = sys .stderr )
114+ sys .exit (0 )
115+
92116 try :
93117 if args .validate :
94118 ard .validate (args .cwd )
0 commit comments