TagParser#

class langchain_experimental.llms.anthropic_functions.TagParser[source]#

Parser for the tool tags.

A heavy-handed solution, but it’s fast for prototyping.

Might be re-implemented later to restrict scope to the limited grammar, and more efficiency.

Uses an HTML parser to parse a limited grammar that allows for syntax of the form:

INPUT -> JUNK? VALUE* JUNK -> JUNK_CHARACTER+ JUNK_CHARACTER -> whitespace | , VALUE -> <IDENTIFIER>DATA</IDENTIFIER> | OBJECT OBJECT -> <IDENTIFIER>VALUE+</IDENTIFIER> IDENTIFIER -> [a-Z][a-Z0-9_]* DATA -> .*

Interprets the data to allow repetition of tags and recursion to support representation of complex types.

^ Just another approximately wrong grammar specification.

Attributes

CDATA_CONTENT_ELEMENTS

Methods

__init__()

A heavy-handed solution, but it's fast for prototyping.

check_for_whole_start_tag(i)

clear_cdata_mode()

close()

Handle any buffered data.

feed(data)

Feed data to the parser.

get_starttag_text()

Return full source of start tag: '<...>'.

getpos()

Return current line number and offset.

goahead(end)

handle_charref(name)

handle_comment(data)

handle_data(data)

Hook when handling data.

handle_decl(decl)

handle_endtag(tag)

Hook when a tag is closed.

handle_entityref(name)

handle_pi(data)

handle_startendtag(tag, attrs)

handle_starttag(tag, attrs)

Hook when a new tag is encountered.

parse_bogus_comment(i[, report])

parse_comment(i[, report])

parse_declaration(i)

parse_endtag(i)

parse_html_declaration(i)

parse_marked_section(i[, report])

parse_pi(i)

parse_starttag(i)

reset()

Reset this instance.

set_cdata_mode(elem)

unknown_decl(data)

updatepos(i, j)

__init__() None[source]#

A heavy-handed solution, but it’s fast for prototyping.

Might be re-implemented later to restrict scope to the limited grammar, and more efficiency.

Uses an HTML parser to parse a limited grammar that allows for syntax of the form:

INPUT -> JUNK? VALUE* JUNK -> JUNK_CHARACTER+ JUNK_CHARACTER -> whitespace | , VALUE -> <IDENTIFIER>DATA</IDENTIFIER> | OBJECT OBJECT -> <IDENTIFIER>VALUE+</IDENTIFIER> IDENTIFIER -> [a-Z][a-Z0-9_]* DATA -> .*

Interprets the data to allow repetition of tags and recursion to support representation of complex types.

^ Just another approximately wrong grammar specification.

Return type:

None

check_for_whole_start_tag(i)#
clear_cdata_mode()#
close()#

Handle any buffered data.

feed(data)#

Feed data to the parser.

Call this as often as you want, with as little or as much text as you want (may include ‘n’).

get_starttag_text()#

Return full source of start tag: ‘<…>’.

getpos()#

Return current line number and offset.

goahead(end)#
handle_charref(name)#
handle_comment(data)#
handle_data(data: str) None[source]#

Hook when handling data.

Parameters:

data (str) –

Return type:

None

handle_decl(decl)#
handle_endtag(tag: str) None[source]#

Hook when a tag is closed.

Parameters:

tag (str) –

Return type:

None

handle_entityref(name)#
handle_pi(data)#
handle_startendtag(tag, attrs)#
handle_starttag(tag: str, attrs: Any) None[source]#

Hook when a new tag is encountered.

Parameters:
  • tag (str) –

  • attrs (Any) –

Return type:

None

parse_bogus_comment(i, report=1)#
parse_comment(i, report=1)#
parse_declaration(i)#
parse_endtag(i)#
parse_html_declaration(i)#
parse_marked_section(i, report=1)#
parse_pi(i)#
parse_starttag(i)#
reset()#

Reset this instance. Loses all unprocessed data.

set_cdata_mode(elem)#
unknown_decl(data)#
updatepos(i, j)#