def _build_arg_list(tokens):
    """Given a list of Tokens for a line, return an argument list. A
    tag with no arguments which includes parentheses should be returned
    as an empty tuple. A tag with no arguments which does not have
    parentheses will be returned as None."""
    try:
        # Check for an opening parenthesis;
        if tokens[1].type != 'LPAREN':
            return None

        # If we got this far, we're assuming there are args
        args = []
        for arg in tokens[2:]:
            if arg.type == 'RPAREN':
                break
            if arg.type == 'SYMBOL':
                args.append(arg.value)
    except KeyError:
        return ()

    return tuple(args)