MCPcopy Index your code
hub / github.com/python/cpython / get_domain

Function get_domain

Lib/email/_header_value_parser.py:1639–1675  ·  view source on GitHub ↗

domain = dot-atom / domain-literal / obs-domain obs-domain = atom *("." atom))

(value)

Source from the content-addressed store, hash-verified

1637 return domain_literal, value
1638
1639def get_domain(value):
1640 """ domain = dot-atom / domain-literal / obs-domain
1641 obs-domain = atom *("." atom))
1642
1643 """
1644 domain = Domain()
1645 leader = None
1646 if value and value[0] in CFWS_LEADER:
1647 leader, value = get_cfws(value)
1648 if not value:
1649 raise errors.HeaderParseError(
1650 "expected domain but found '{}'".format(value))
1651 if value[0] == '[':
1652 token, value = get_domain_literal(value)
1653 if leader is not None:
1654 token[:0] = [leader]
1655 domain.append(token)
1656 return domain, value
1657 try:
1658 token, value = get_dot_atom(value)
1659 except errors.HeaderParseError:
1660 token, value = get_atom(value)
1661 if value and value[0] == '@':
1662 raise errors.HeaderParseError('Invalid Domain')
1663 if leader is not None:
1664 token[:0] = [leader]
1665 domain.append(token)
1666 if value and value[0] == '.':
1667 domain.defects.append(errors.ObsoleteHeaderDefect(
1668 "domain is not a dot-atom (contains CFWS)"))
1669 if domain[0].token_type == 'dot-atom':
1670 domain[:] = domain[0]
1671 while value and value[0] == '.':
1672 domain.append(DOT)
1673 token, value = get_atom(value[1:])
1674 domain.append(token)
1675 return domain, value
1676
1677def get_addr_spec(value):
1678 """ addr-spec = local-part "@" domain

Callers 3

get_addr_specFunction · 0.85
get_obs_routeFunction · 0.85
get_msg_idFunction · 0.85

Calls 7

DomainClass · 0.85
get_cfwsFunction · 0.85
get_domain_literalFunction · 0.85
get_dot_atomFunction · 0.85
get_atomFunction · 0.85
formatMethod · 0.45
appendMethod · 0.45

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…