blob: 004337e257c3cd3d8584eb203534972e356e44cb [file] [log] [blame]
# Copyright 1999-2013 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
import re
from portage.dep import isvalidatom
def insert_category_into_atom(atom, category):
# Handle '*' character for "extended syntax" wildcard support.
alphanum = re.search(r"[\*\w]", atom, re.UNICODE)
if alphanum:
ret = atom[: alphanum.start()] + "%s/" % category + atom[alphanum.start() :]
else:
ret = None
return ret
def is_valid_package_atom(x, allow_repo=False, allow_build_id=True):
if "/" not in x.split(":")[0]:
x2 = insert_category_into_atom(x, "cat")
if x2 != None:
x = x2
return isvalidatom(
x, allow_blockers=False, allow_repo=allow_repo, allow_build_id=allow_build_id
)