MCPcopy Index your code
hub / github.com/RustPython/RustPython / get_domain

Function get_domain

Lib/email/_header_value_parser.py:1622–1658  ·  view source on GitHub ↗

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

(value)

Source from the content-addressed store, hash-verified

1620 return domain_literal, value
1621
1622def get_domain(value):
1623 """ domain = dot-atom / domain-literal / obs-domain
1624 obs-domain = atom *("." atom))
1625
1626 """
1627 domain = Domain()
1628 leader = None
1629 if value and value[0] in CFWS_LEADER:
1630 leader, value = get_cfws(value)
1631 if not value:
1632 raise errors.HeaderParseError(
1633 "expected domain but found '{}'".format(value))
1634 if value[0] == '[':
1635 token, value = get_domain_literal(value)
1636 if leader is not None:
1637 token[:0] = [leader]
1638 domain.append(token)
1639 return domain, value
1640 try:
1641 token, value = get_dot_atom(value)
1642 except errors.HeaderParseError:
1643 token, value = get_atom(value)
1644 if value and value[0] == '@':
1645 raise errors.HeaderParseError('Invalid Domain')
1646 if leader is not None:
1647 token[:0] = [leader]
1648 domain.append(token)
1649 if value and value[0] == '.':
1650 domain.defects.append(errors.ObsoleteHeaderDefect(
1651 "domain is not a dot-atom (contains CFWS)"))
1652 if domain[0].token_type == 'dot-atom':
1653 domain[:] = domain[0]
1654 while value and value[0] == '.':
1655 domain.append(DOT)
1656 token, value = get_atom(value[1:])
1657 domain.append(token)
1658 return domain, value
1659
1660def get_addr_spec(value):
1661 """ 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