aboutsummaryrefslogtreecommitdiff
blob: 17f7642665bed7b0c05f0638c5e24c8187b79bfa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# 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)