-
48 def fields(cls) -> typing.Dict[str, typing.Any]:
-
49 if cls.__cached_fields__
is not None:
-
50 return cls.__cached_fields__
+
+
+
+
+
+
52 A wrapper for pydantic BaseModel that implements the Schema interface.
+
+
54 __cached_fields__ =
None
+
+
+
+
57 def fields(cls) -> typing.Dict[str, typing.Any]:
+
58 if cls.__cached_fields__
is not None:
+
59 return cls.__cached_fields__
-
51 cls.__cached_fields__ = {k:
FieldInfo(v)
for k, v
in cls.model_fields.items()}
-
52 return cls.__cached_fields__
-
-
-
-
55 def from_json(cls, _json: str) ->
"ClassSchema":
+
60 cls.__cached_fields__ = {k:
FieldInfo(v)
for k, v
in cls.model_fields.items()}
+
61 return cls.__cached_fields__
+
+
+
+
64 def from_json(cls, _json: str) ->
"ClassSchema":
-
-
-
57 Create a ClassSchema from a JSON string.
-
-
59 return cls.model_validate_json(_json)
+
+
+
66 Create a ClassSchema from a JSON string.
+
+
68 return cls.model_validate_json(_json)
-
-
-
62CallableT = typing.TypeVar(
'CallableT', bound=typing.Callable)
-
-
-
-
65def callable_schema(func: CallableT, /, *, config: ConfigDict =
None, validate_return: bool =
False) -> CallableT:
-
-
67 A decorator that wraps pydantic's validate_call. The decorated callable also implements the Schema interface.
-
-
-
70 func: The function to decorate.
-
71 config: The pydantic configuration of validate_call.
-
72 validate_return: Whether to validate the return value.
-
-
-
-
75 The decorated callable.
-
-
77 pydantic_wrapper = validate_call(config=config, validate_return=validate_return)(func)
-
78 signature = inspect.signature(func, eval_str=
True)
-
+
+
+
71CallableT = typing.TypeVar(
'CallableT', bound=typing.Callable)
+
+
+
+
74def callable_schema(func: CallableT, /, *, config: ConfigDict =
None, validate_return: bool =
False) -> CallableT:
+
+
76 A decorator that wraps pydantic's validate_call. The decorated callable also implements the Schema interface.
+
+
+
79 func: The function to decorate.
+
80 config: The pydantic configuration of validate_call.
+
81 validate_return: Whether to validate the return value.
+
+
+
+
84 The decorated callable.
+
+
86 pydantic_wrapper = validate_call(config=config, validate_return=validate_return)(func)
+
87 signature = inspect.signature(func, eval_str=
True)
+
-
80 for k, p
in signature.parameters.items():
-
-
82 if p.default
is not inspect.Signature.empty:
-
-
84 actual_type = p.annotation
-
-
86 if isinstance(p.default, pydantic.fields.FieldInfo):
-
-
88 if typing.get_origin(p.annotation)
is typing.Annotated:
-
89 actual_type, *meta = typing.get_args(p.annotation)
-
-
-
92 if isinstance(i, pydantic.fields.FieldInfo):
-
-
-
-
+
89 for k, p
in signature.parameters.items():
+
+
91 if p.default
is not inspect.Signature.empty:
+
+
93 actual_type = p.annotation
+
+
95 if isinstance(p.default, pydantic.fields.FieldInfo):
+
+
97 if typing.get_origin(p.annotation)
is typing.Annotated:
+
98 actual_type, *meta = typing.get_args(p.annotation)
+
+
+
101 if isinstance(i, pydantic.fields.FieldInfo):
+
-
96 if fieldinfo
is not None:
-
-
+
105 if fieldinfo
is not None:
+
106 fields[k] = fieldinfo
+
-
99 fields[k].default = default
-
100 fields[k].annotation = actual_type
-
101 fields[k].metadata.extend(metadata)
-
-
103 if default
is not None:
-
104 fields[k] = Field(default)
-
-
-
107 fields[k].annotation = actual_type
-
108 fields[k].metadata.extend(metadata)
-
-
-
-
112 def from_json(cls, json_str):
-
-
113 json_data = json.loads(json_str)
-
-
-
116 for k, p
in signature.parameters.items():
-
117 if p.kind == p.POSITIONAL_ONLY:
-
118 positional_only.append(json_data[k])
-
-
120 others[k] = json_data[k]
-
121 return cls(*positional_only, **others)
-
-
-
124 f
'{func.__qualname__}_PydanticSchema_{id(func)}',
-
-
-
127 "_func": pydantic_wrapper,
-
128 '__new__':
lambda cls, *args, **kwargs: pydantic_wrapper(*args, **kwargs),
-
129 '__call__':
lambda *args, **kwargs: pydantic_wrapper(*args, **kwargs)
-
-
-
132 _class.from_json = classmethod(from_json)
-
133 _class.fields = classmethod(
lambda cls: fields)
-
+
108 fields[k].default = default
+
109 fields[k].annotation = actual_type
+
110 fields[k].metadata.extend(metadata)
+
+
112 if default
is not None:
+
113 fields[k] = Field(default)
+
+
+
116 fields[k].annotation = actual_type
+
117 fields[k].metadata.extend(metadata)
+
+
+
+
121 def from_json(cls, json_str):
+
+
122 json_data = json.loads(json_str)
+
+
+
125 for k, p
in signature.parameters.items():
+
126 if p.kind == p.POSITIONAL_ONLY:
+
127 positional_only.append(json_data[k])
+
+
129 others[k] = json_data[k]
+
130 return cls(*positional_only, **others)
+
+
+
133 f
'{func.__qualname__}_PydanticSchema_{id(func)}',
+
+
+
136 "_func": pydantic_wrapper,
+
137 '__new__':
lambda cls, *args, **kwargs: pydantic_wrapper(*args, **kwargs),
+
138 '__call__':
lambda *args, **kwargs: pydantic_wrapper(*args, **kwargs)
+
+
+
141 _class.from_json = classmethod(from_json)
+
142 _class.fields = classmethod(
lambda cls: fields)
+
-
+
-
+
+
-
-
-
-
-
+
+
+
+
+
+
diff --git a/dev/schema_8py.html b/dev/schema_8py.html
index 4f852a60..2d1d1d7b 100644
--- a/dev/schema_8py.html
+++ b/dev/schema_8py.html
@@ -131,6 +131,8 @@
Classes
class | formatron.schemas.schema.FieldInfo |
|
+
class | formatron.schemas.schema.TypeWithMetadata |
+
|
class | formatron.schemas.schema.Schema |
| An abstract schema that describes some data. More...
|
|
diff --git a/dev/schema_8py.js b/dev/schema_8py.js
index bd0da2b4..be07dcc7 100644
--- a/dev/schema_8py.js
+++ b/dev/schema_8py.js
@@ -1,5 +1,6 @@
var schema_8py =
[
[ "formatron.schemas.schema.FieldInfo", "classformatron_1_1schemas_1_1schema_1_1FieldInfo.html", "classformatron_1_1schemas_1_1schema_1_1FieldInfo" ],
+ [ "formatron.schemas.schema.TypeWithMetadata", "classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html", "classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata" ],
[ "formatron.schemas.schema.Schema", "classformatron_1_1schemas_1_1schema_1_1Schema.html", "classformatron_1_1schemas_1_1schema_1_1Schema" ]
];
\ No newline at end of file
diff --git a/dev/schema_8py_source.html b/dev/schema_8py_source.html
index 952747b8..36cb8536 100644
--- a/dev/schema_8py_source.html
+++ b/dev/schema_8py_source.html
@@ -148,28 +148,44 @@
-
-
-
-
28 An abstract schema that describes some data.
-
-
-
-
32 def fields(cls) -> dict[str, FieldInfo]:
-
-
34 Get the fields of the schema.
-
-
+
25class TypeWithMetadata:
+
26 def __init__(self, type: typing.Type[typing.Any], metadata: dict[str, typing.Any]|
None):
+
+
28 self._metadata = metadata
+
+
+
31 def type(self) -> typing.Type[typing.Any]:
+
+
+
+
35 def metadata(self) -> dict[str, typing.Any]|None:
+
-
+
-
-
40 def from_json(cls, json: str) ->
"Schema":
-
+
+
40 An abstract schema that describes some data.
+
-
42 Create a schema from a JSON string.
-
-
+
+
+
+
+
44 def fields(cls) -> dict[str, FieldInfo]:
+
+
+
46 Get the fields of the schema.
+
+
+
+
+
+
+
52 def from_json(cls, json: str) ->
"Schema":
+
+
54 Create a schema from a JSON string.
+
+
diff --git a/dev/search/all_0.js b/dev/search/all_0.js
index 771b843f..f348535b 100644
--- a/dev/search/all_0.js
+++ b/dev/search/all_0.js
@@ -1,13 +1,13 @@
var searchData=
[
['_5f_5fcall_5f_5f_0',['__call__',['../classformatron_1_1integrations_1_1transformers_1_1FormattersLogitsProcessor.html#af5ec5643f3c51046cb3b5e73fbb04f2b',1,'formatron.integrations.transformers.FormattersLogitsProcessor.__call__()'],['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#ad4a81bb45d259bb5408433cdb6cbafdd',1,'formatron.integrations.vllm.FormattersLogitsProcessor.__call__()']]],
- ['_5f_5finit_5f_5f_1',['__init__',['../classformatron_1_1extractor_1_1Extractor.html#a569fc7895a82f4d4b59866719219d4e0',1,'formatron.extractor.Extractor.__init__()'],['../classformatron_1_1extractor_1_1NonterminalExtractor.html#a45c14f79c14b539837ebdd26c3b5567b',1,'formatron.extractor.NonterminalExtractor.__init__()'],['../classformatron_1_1extractor_1_1LiteralExtractor.html#ab4da390ad7efaf5a3aab0e0ccb78fab3',1,'formatron.extractor.LiteralExtractor.__init__()'],['../classformatron_1_1extractor_1_1ChoiceExtractor.html#a1a91b31475c7348a3cf9fab97c6d26f0',1,'formatron.extractor.ChoiceExtractor.__init__()'],['../classformatron_1_1extractor_1_1SubstringExtractor.html#a843997315c77b9c7c6eb84ba7e02ff83',1,'formatron.extractor.SubstringExtractor.__init__()'],['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#a7a51edd3cc7c24370c809d91e07771dc',1,'formatron.formats.json.JsonExtractor.__init__()'],['../classformatron_1_1formats_1_1regex_1_1RegexExtractor.html#a6fc2f05d044cce49935c415248de5e5a',1,'formatron.formats.regex.RegexExtractor.__init__()'],['../classformatron_1_1formatter_1_1Formatter.html#a369269f53f32be2f1d92663670354515',1,'formatron.formatter.Formatter.__init__()'],['../classformatron_1_1formatter_1_1FormatterBuilder.html#abb13104747355cae16e6ad0c3067fac8',1,'formatron.formatter.FormatterBuilder.__init__()'],['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#adc94d2f2ddd06f966dca93079f17df8c',1,'formatron.integrations.exllamav2.FormatterFilter.__init__()'],['../classformatron_1_1integrations_1_1RWKV_1_1PIPELINE__ARGS.html#a53a892118d9b168024aaa6062f92cd7c',1,'formatron.integrations.RWKV.PIPELINE_ARGS.__init__()'],['../classformatron_1_1integrations_1_1RWKV_1_1PIPELINE.html#aa646fb0bf5f3674d1daba91dd0320017',1,'formatron.integrations.RWKV.PIPELINE.__init__()'],['../classformatron_1_1integrations_1_1transformers_1_1FormattersLogitsProcessor.html#aa70d2276eeb09fdf53066e4019df79df',1,'formatron.integrations.transformers.FormattersLogitsProcessor.__init__()'],['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#a0ee5e6edc8fc11dfd7406c140c13b7b9',1,'formatron.integrations.vllm.FormattersLogitsProcessor.__init__()'],['../classformatron_1_1schemas_1_1dict__inference_1_1FieldInfo.html#a0286ba9c9e6509ce23d530409209b5da',1,'formatron.schemas.dict_inference.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#abc61867418b7f30a3545e71c9b28e708',1,'formatron.schemas.json_schema.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#a4a5a010c6acef15f8fe2d4318223696b',1,'formatron.schemas.pydantic.FieldInfo.__init__()']]],
+ ['_5f_5finit_5f_5f_1',['__init__',['../classformatron_1_1extractor_1_1Extractor.html#a569fc7895a82f4d4b59866719219d4e0',1,'formatron.extractor.Extractor.__init__()'],['../classformatron_1_1extractor_1_1NonterminalExtractor.html#a45c14f79c14b539837ebdd26c3b5567b',1,'formatron.extractor.NonterminalExtractor.__init__()'],['../classformatron_1_1extractor_1_1LiteralExtractor.html#ab4da390ad7efaf5a3aab0e0ccb78fab3',1,'formatron.extractor.LiteralExtractor.__init__()'],['../classformatron_1_1extractor_1_1ChoiceExtractor.html#a1a91b31475c7348a3cf9fab97c6d26f0',1,'formatron.extractor.ChoiceExtractor.__init__()'],['../classformatron_1_1extractor_1_1SubstringExtractor.html#a843997315c77b9c7c6eb84ba7e02ff83',1,'formatron.extractor.SubstringExtractor.__init__()'],['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#a7a51edd3cc7c24370c809d91e07771dc',1,'formatron.formats.json.JsonExtractor.__init__()'],['../classformatron_1_1formats_1_1regex_1_1RegexExtractor.html#a6fc2f05d044cce49935c415248de5e5a',1,'formatron.formats.regex.RegexExtractor.__init__()'],['../classformatron_1_1formatter_1_1Formatter.html#a369269f53f32be2f1d92663670354515',1,'formatron.formatter.Formatter.__init__()'],['../classformatron_1_1formatter_1_1FormatterBuilder.html#abb13104747355cae16e6ad0c3067fac8',1,'formatron.formatter.FormatterBuilder.__init__()'],['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#adc94d2f2ddd06f966dca93079f17df8c',1,'formatron.integrations.exllamav2.FormatterFilter.__init__()'],['../classformatron_1_1integrations_1_1RWKV_1_1PIPELINE__ARGS.html#a53a892118d9b168024aaa6062f92cd7c',1,'formatron.integrations.RWKV.PIPELINE_ARGS.__init__()'],['../classformatron_1_1integrations_1_1RWKV_1_1PIPELINE.html#aa646fb0bf5f3674d1daba91dd0320017',1,'formatron.integrations.RWKV.PIPELINE.__init__()'],['../classformatron_1_1integrations_1_1transformers_1_1FormattersLogitsProcessor.html#aa70d2276eeb09fdf53066e4019df79df',1,'formatron.integrations.transformers.FormattersLogitsProcessor.__init__()'],['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#a0ee5e6edc8fc11dfd7406c140c13b7b9',1,'formatron.integrations.vllm.FormattersLogitsProcessor.__init__()'],['../classformatron_1_1schemas_1_1dict__inference_1_1FieldInfo.html#a0286ba9c9e6509ce23d530409209b5da',1,'formatron.schemas.dict_inference.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#abc61867418b7f30a3545e71c9b28e708',1,'formatron.schemas.json_schema.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#a4a5a010c6acef15f8fe2d4318223696b',1,'formatron.schemas.pydantic.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#a0c3cf51ceb503d4d195f5623d57e160b',1,'formatron.schemas.schema.TypeWithMetadata.__init__()']]],
['_5f_5finit_5f_5f_2epy_2',['__init__.py',['../____init_____8py.html',1,'(Global Namespace)'],['../formats_2____init_____8py.html',1,'(Global Namespace)'],['../integrations_2____init_____8py.html',1,'(Global Namespace)'],['../schemas_2____init_____8py.html',1,'(Global Namespace)']]],
['_5f_5frepr_5f_5f_3',['__repr__',['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#ad291e8df78d045d3364bc6a17582b416',1,'formatron::schemas::pydantic::FieldInfo']]],
['_5f_5fstr_5f_5f_4',['__str__',['../classformatron_1_1extractor_1_1Extractor.html#afe6a1f745fd56540ccff5fdc5d00f0a5',1,'formatron.extractor.Extractor.__str__()'],['../classformatron_1_1formatter_1_1Formatter.html#a827c993f0ac74abff6276b3af6058e3f',1,'formatron.formatter.Formatter.__str__()'],['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#a49ac1734cddfadc1b7721f57775890a6',1,'formatron.schemas.pydantic.FieldInfo.__str__()']]],
['_5fadd_5fcapture_5fname_5',['_add_capture_name',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a1e97daf55b4149be6aaa5dd747ed6146',1,'formatron::formatter::FormatterBuilder']]],
['_5fadd_5fextractor_6',['_add_extractor',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a6e495e90b9da81108b6627166872bbbb',1,'formatron::formatter::FormatterBuilder']]],
- ['_5fannotation_7',['_annotation',['../classformatron_1_1schemas_1_1dict__inference_1_1FieldInfo.html#af85ec1a61b7ef87729757cef077c4df4',1,'formatron.schemas.dict_inference.FieldInfo._annotation'],['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#a82c87a6773b72ee766add0dc893482b0',1,'formatron.schemas.json_schema.FieldInfo._annotation']]],
+ ['_5fannotation_7',['_annotation',['../classformatron_1_1schemas_1_1dict__inference_1_1FieldInfo.html#af85ec1a61b7ef87729757cef077c4df4',1,'formatron.schemas.dict_inference.FieldInfo._annotation'],['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#a82c87a6773b72ee766add0dc893482b0',1,'formatron.schemas.json_schema.FieldInfo._annotation'],['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#aab00d20e817e3ea9fc15295a94e8242b',1,'formatron.schemas.pydantic.FieldInfo._annotation']]],
['_5fassert_5fcapture_5fname_5fvalid_8',['_assert_capture_name_valid',['../classformatron_1_1formatter_1_1FormatterBuilder.html#ab5ad5186f55d35e3abd2d5c213302a25',1,'formatron::formatter::FormatterBuilder']]],
['_5fautodetect_5fprocessors_9',['_autodetect_processors',['../namespaceformatron_1_1integrations_1_1__utils.html#a76ded8fc3ee5ad369ec55b595ae74153',1,'formatron::integrations::_utils']]],
['_5fcapture_5fname_10',['_capture_name',['../classformatron_1_1extractor_1_1Extractor.html#a3299dc34a7276ab8ab553513048211d3',1,'formatron::extractor::Extractor']]],
@@ -43,27 +43,29 @@ var searchData=
['_5fmain_5frule_40',['_main_rule',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a3c3ba1934b9207c412202c5ef29b002a',1,'formatron::formatter::FormatterBuilder']]],
['_5fmerge_5fkey_41',['_merge_key',['../namespaceformatron_1_1schemas_1_1json__schema.html#a5fcddd43a5f64374b5b75d4aafeb9135',1,'formatron::schemas::json_schema']]],
['_5fmerge_5freferenced_5fschema_42',['_merge_referenced_schema',['../namespaceformatron_1_1schemas_1_1json__schema.html#a45c9b97319a58c2013b8e3f10ad78c30',1,'formatron::schemas::json_schema']]],
- ['_5fmultiple_5freplace_43',['_multiple_replace',['../namespaceformatron_1_1integrations_1_1__utils.html#abf64c53a323448aedc1361d01515226a',1,'formatron::integrations::_utils']]],
- ['_5fnonterminal_44',['_nonterminal',['../classformatron_1_1extractor_1_1NonterminalExtractor.html#a5c4c968b45e328b8caa4b2795ecc00fe',1,'formatron::extractor::NonterminalExtractor']]],
- ['_5fnonterminal_5fto_5fextractor_45',['_nonterminal_to_extractor',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a870a5075cfd903c77e5ee58b6c304e03',1,'formatron::formatter::FormatterBuilder']]],
- ['_5fobtain_5faccepted_5foutput_46',['_obtain_accepted_output',['../classformatron_1_1formatter_1_1Formatter.html#ae4be840a942f608c1a0c256dbf68901b',1,'formatron::formatter::Formatter']]],
- ['_5fobtain_5ftype_47',['_obtain_type',['../namespaceformatron_1_1schemas_1_1json__schema.html#a544d74edf1fdccbad9e216d9ff028a20',1,'formatron::schemas::json_schema']]],
- ['_5fon_5fcompletion_48',['_on_completion',['../classformatron_1_1formatter_1_1FormatterBase.html#a469880a21192928e82823cc340a22ce2',1,'formatron.formatter.FormatterBase._on_completion()'],['../classformatron_1_1formatter_1_1Formatter.html#ac6f7e3f96c6318689c5cd0d44a1cdde7',1,'formatron.formatter.Formatter._on_completion()']]],
- ['_5fpass_5ftokens_49',['_pass_tokens',['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a370eaf641dd803b2759b4e5fc7f74a1c',1,'formatron::integrations::exllamav2::FormatterFilter']]],
- ['_5frecursive_5fresolve_5freference_50',['_recursive_resolve_reference',['../namespaceformatron_1_1schemas_1_1json__schema.html#aaba012c79d101be93f4d96588c9f8cc2',1,'formatron::schemas::json_schema']]],
- ['_5fregex_51',['_regex',['../classformatron_1_1formats_1_1regex_1_1RegexExtractor.html#a1df60401933eef6cf5a1ff041f11ec46',1,'formatron::formats::regex::RegexExtractor']]],
- ['_5fregister_5fall_5fpredefined_5ftypes_52',['_register_all_predefined_types',['../namespaceformatron_1_1formats_1_1json.html#a311b750cba3838aee622b9809888f051',1,'formatron::formats::json']]],
- ['_5frequired_53',['_required',['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#a8ac1acf32bb578e121ef28a433857726',1,'formatron::schemas::json_schema::FieldInfo']]],
- ['_5fresolve_5fnew_5furl_54',['_resolve_new_url',['../namespaceformatron_1_1schemas_1_1json__schema.html#a9dc9dc267e5dd7b6581e2367e9238152',1,'formatron::schemas::json_schema']]],
- ['_5fresolve_5freference_55',['_resolve_reference',['../namespaceformatron_1_1schemas_1_1json__schema.html#a24b516494672cc5dbbf7300ea65479b1',1,'formatron::schemas::json_schema']]],
- ['_5frule_5fstr_56',['_rule_str',['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#aecf88428e414da080f11ed0ab1e13a65',1,'formatron::formats::json::JsonExtractor']]],
- ['_5frules_57',['_rules',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a62c61ad02e40526b73ca460d0cf1d12c',1,'formatron::formatter::FormatterBuilder']]],
- ['_5fstring_58',['_string',['../classformatron_1_1extractor_1_1SubstringExtractor.html#a3781b75c6c8c12f89fd70ea405e11293',1,'formatron::extractor::SubstringExtractor']]],
- ['_5fsuffix_5fautomaton_59',['_suffix_automaton',['../classformatron_1_1extractor_1_1SubstringExtractor.html#a97cb3468674873adfc85bc17ff1a9a97',1,'formatron::extractor::SubstringExtractor']]],
- ['_5fto_5fnext_5fbatch_5fstep_60',['_to_next_batch_step',['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#ab87fea11f930a33130cecadd8cdf0cc6',1,'formatron::integrations::vllm::FormattersLogitsProcessor']]],
- ['_5fto_5fobject_61',['_to_object',['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#a2e72d806c8dffc0136231b81eb724355',1,'formatron::formats::json::JsonExtractor']]],
- ['_5ftoken_5fid_5for_5fbytes_62',['_token_id_or_bytes',['../classformatron_1_1formatter_1_1Formatter.html#adf232d46083546ae3363e4ce007a335b',1,'formatron::formatter::Formatter']]],
- ['_5ftype_5fto_5fnonterminals_63',['_type_to_nonterminals',['../namespaceformatron_1_1formats_1_1json.html#a003a1dac95634ac70f86d51e768945a4',1,'formatron::formats::json']]],
- ['_5futils_2epy_64',['_utils.py',['../__utils_8py.html',1,'']]],
- ['_5fvalidate_5fjson_5fschema_65',['_validate_json_schema',['../namespaceformatron_1_1schemas_1_1json__schema.html#a51aa68e29951e6b295844b13177b7d6a',1,'formatron::schemas::json_schema']]]
+ ['_5fmetadata_43',['_metadata',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#a34312895f9d497d5c35cf372f9c498f3',1,'formatron::schemas::schema::TypeWithMetadata']]],
+ ['_5fmultiple_5freplace_44',['_multiple_replace',['../namespaceformatron_1_1integrations_1_1__utils.html#abf64c53a323448aedc1361d01515226a',1,'formatron::integrations::_utils']]],
+ ['_5fnonterminal_45',['_nonterminal',['../classformatron_1_1extractor_1_1NonterminalExtractor.html#a5c4c968b45e328b8caa4b2795ecc00fe',1,'formatron::extractor::NonterminalExtractor']]],
+ ['_5fnonterminal_5fto_5fextractor_46',['_nonterminal_to_extractor',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a870a5075cfd903c77e5ee58b6c304e03',1,'formatron::formatter::FormatterBuilder']]],
+ ['_5fobtain_5faccepted_5foutput_47',['_obtain_accepted_output',['../classformatron_1_1formatter_1_1Formatter.html#ae4be840a942f608c1a0c256dbf68901b',1,'formatron::formatter::Formatter']]],
+ ['_5fobtain_5ftype_48',['_obtain_type',['../namespaceformatron_1_1schemas_1_1json__schema.html#a544d74edf1fdccbad9e216d9ff028a20',1,'formatron::schemas::json_schema']]],
+ ['_5fon_5fcompletion_49',['_on_completion',['../classformatron_1_1formatter_1_1FormatterBase.html#a469880a21192928e82823cc340a22ce2',1,'formatron.formatter.FormatterBase._on_completion()'],['../classformatron_1_1formatter_1_1Formatter.html#ac6f7e3f96c6318689c5cd0d44a1cdde7',1,'formatron.formatter.Formatter._on_completion()']]],
+ ['_5fpass_5ftokens_50',['_pass_tokens',['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a370eaf641dd803b2759b4e5fc7f74a1c',1,'formatron::integrations::exllamav2::FormatterFilter']]],
+ ['_5frecursive_5fresolve_5freference_51',['_recursive_resolve_reference',['../namespaceformatron_1_1schemas_1_1json__schema.html#aaba012c79d101be93f4d96588c9f8cc2',1,'formatron::schemas::json_schema']]],
+ ['_5fregex_52',['_regex',['../classformatron_1_1formats_1_1regex_1_1RegexExtractor.html#a1df60401933eef6cf5a1ff041f11ec46',1,'formatron::formats::regex::RegexExtractor']]],
+ ['_5fregister_5fall_5fpredefined_5ftypes_53',['_register_all_predefined_types',['../namespaceformatron_1_1formats_1_1json.html#a311b750cba3838aee622b9809888f051',1,'formatron::formats::json']]],
+ ['_5frequired_54',['_required',['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#a8ac1acf32bb578e121ef28a433857726',1,'formatron::schemas::json_schema::FieldInfo']]],
+ ['_5fresolve_5fnew_5furl_55',['_resolve_new_url',['../namespaceformatron_1_1schemas_1_1json__schema.html#a9dc9dc267e5dd7b6581e2367e9238152',1,'formatron::schemas::json_schema']]],
+ ['_5fresolve_5freference_56',['_resolve_reference',['../namespaceformatron_1_1schemas_1_1json__schema.html#a24b516494672cc5dbbf7300ea65479b1',1,'formatron::schemas::json_schema']]],
+ ['_5frule_5fstr_57',['_rule_str',['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#aecf88428e414da080f11ed0ab1e13a65',1,'formatron::formats::json::JsonExtractor']]],
+ ['_5frules_58',['_rules',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a62c61ad02e40526b73ca460d0cf1d12c',1,'formatron::formatter::FormatterBuilder']]],
+ ['_5fstring_59',['_string',['../classformatron_1_1extractor_1_1SubstringExtractor.html#a3781b75c6c8c12f89fd70ea405e11293',1,'formatron::extractor::SubstringExtractor']]],
+ ['_5fsuffix_5fautomaton_60',['_suffix_automaton',['../classformatron_1_1extractor_1_1SubstringExtractor.html#a97cb3468674873adfc85bc17ff1a9a97',1,'formatron::extractor::SubstringExtractor']]],
+ ['_5fto_5fnext_5fbatch_5fstep_61',['_to_next_batch_step',['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#ab87fea11f930a33130cecadd8cdf0cc6',1,'formatron::integrations::vllm::FormattersLogitsProcessor']]],
+ ['_5fto_5fobject_62',['_to_object',['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#a2e72d806c8dffc0136231b81eb724355',1,'formatron::formats::json::JsonExtractor']]],
+ ['_5ftoken_5fid_5for_5fbytes_63',['_token_id_or_bytes',['../classformatron_1_1formatter_1_1Formatter.html#adf232d46083546ae3363e4ce007a335b',1,'formatron::formatter::Formatter']]],
+ ['_5ftype_64',['_type',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#a4d1ea7d59f700634eb2545ce3d6cf324',1,'formatron::schemas::schema::TypeWithMetadata']]],
+ ['_5ftype_5fto_5fnonterminals_65',['_type_to_nonterminals',['../namespaceformatron_1_1formats_1_1json.html#a003a1dac95634ac70f86d51e768945a4',1,'formatron::formats::json']]],
+ ['_5futils_2epy_66',['_utils.py',['../__utils_8py.html',1,'']]],
+ ['_5fvalidate_5fjson_5fschema_67',['_validate_json_schema',['../namespaceformatron_1_1schemas_1_1json__schema.html#a51aa68e29951e6b295844b13177b7d6a',1,'formatron::schemas::json_schema']]]
];
diff --git a/dev/search/all_12.js b/dev/search/all_12.js
index ce03ed47..335d8580 100644
--- a/dev/search/all_12.js
+++ b/dev/search/all_12.js
@@ -1,4 +1,6 @@
var searchData=
[
- ['transformers_2epy_0',['transformers.py',['../transformers_8py.html',1,'']]]
+ ['transformers_2epy_0',['transformers.py',['../transformers_8py.html',1,'']]],
+ ['type_1',['type',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#ada7a24496aad9979411523441c53a6cf',1,'formatron::schemas::schema::TypeWithMetadata']]],
+ ['typewithmetadata_2',['TypeWithMetadata',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html',1,'formatron::schemas::schema']]]
];
diff --git a/dev/search/all_d.js b/dev/search/all_d.js
index 032f5ef9..374eaabe 100644
--- a/dev/search/all_d.js
+++ b/dev/search/all_d.js
@@ -1,4 +1,5 @@
var searchData=
[
- ['mask_5flogits_0',['mask_logits',['../classformatron_1_1formatter_1_1FormatterBase.html#ae8db7e92a900322ae5aa603b5c8f386f',1,'formatron.formatter.FormatterBase.mask_logits()'],['../classformatron_1_1formatter_1_1Formatter.html#a1068b4fa2167039fe04519ec4db65278',1,'formatron.formatter.Formatter.mask_logits()'],['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a7a0e2e459eccf822cf79457a121a3a74',1,'formatron.integrations.exllamav2.FormatterFilter.mask_logits()']]]
+ ['mask_5flogits_0',['mask_logits',['../classformatron_1_1formatter_1_1FormatterBase.html#ae8db7e92a900322ae5aa603b5c8f386f',1,'formatron.formatter.FormatterBase.mask_logits()'],['../classformatron_1_1formatter_1_1Formatter.html#a1068b4fa2167039fe04519ec4db65278',1,'formatron.formatter.Formatter.mask_logits()'],['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a7a0e2e459eccf822cf79457a121a3a74',1,'formatron.integrations.exllamav2.FormatterFilter.mask_logits()']]],
+ ['metadata_1',['metadata',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#af8604b758b8af6878a130a4f0f28389b',1,'formatron::schemas::schema::TypeWithMetadata']]]
];
diff --git a/dev/search/classes_9.js b/dev/search/classes_9.js
new file mode 100644
index 00000000..99ffaccb
--- /dev/null
+++ b/dev/search/classes_9.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['typewithmetadata_0',['TypeWithMetadata',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html',1,'formatron::schemas::schema']]]
+];
diff --git a/dev/search/functions_0.js b/dev/search/functions_0.js
index 941562ea..49e0eb7d 100644
--- a/dev/search/functions_0.js
+++ b/dev/search/functions_0.js
@@ -1,7 +1,7 @@
var searchData=
[
['_5f_5fcall_5f_5f_0',['__call__',['../classformatron_1_1integrations_1_1transformers_1_1FormattersLogitsProcessor.html#af5ec5643f3c51046cb3b5e73fbb04f2b',1,'formatron.integrations.transformers.FormattersLogitsProcessor.__call__()'],['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#ad4a81bb45d259bb5408433cdb6cbafdd',1,'formatron.integrations.vllm.FormattersLogitsProcessor.__call__()']]],
- ['_5f_5finit_5f_5f_1',['__init__',['../classformatron_1_1extractor_1_1Extractor.html#a569fc7895a82f4d4b59866719219d4e0',1,'formatron.extractor.Extractor.__init__()'],['../classformatron_1_1extractor_1_1NonterminalExtractor.html#a45c14f79c14b539837ebdd26c3b5567b',1,'formatron.extractor.NonterminalExtractor.__init__()'],['../classformatron_1_1extractor_1_1LiteralExtractor.html#ab4da390ad7efaf5a3aab0e0ccb78fab3',1,'formatron.extractor.LiteralExtractor.__init__()'],['../classformatron_1_1extractor_1_1ChoiceExtractor.html#a1a91b31475c7348a3cf9fab97c6d26f0',1,'formatron.extractor.ChoiceExtractor.__init__()'],['../classformatron_1_1extractor_1_1SubstringExtractor.html#a843997315c77b9c7c6eb84ba7e02ff83',1,'formatron.extractor.SubstringExtractor.__init__()'],['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#a7a51edd3cc7c24370c809d91e07771dc',1,'formatron.formats.json.JsonExtractor.__init__()'],['../classformatron_1_1formats_1_1regex_1_1RegexExtractor.html#a6fc2f05d044cce49935c415248de5e5a',1,'formatron.formats.regex.RegexExtractor.__init__()'],['../classformatron_1_1formatter_1_1Formatter.html#a369269f53f32be2f1d92663670354515',1,'formatron.formatter.Formatter.__init__()'],['../classformatron_1_1formatter_1_1FormatterBuilder.html#abb13104747355cae16e6ad0c3067fac8',1,'formatron.formatter.FormatterBuilder.__init__()'],['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#adc94d2f2ddd06f966dca93079f17df8c',1,'formatron.integrations.exllamav2.FormatterFilter.__init__()'],['../classformatron_1_1integrations_1_1RWKV_1_1PIPELINE__ARGS.html#a53a892118d9b168024aaa6062f92cd7c',1,'formatron.integrations.RWKV.PIPELINE_ARGS.__init__()'],['../classformatron_1_1integrations_1_1RWKV_1_1PIPELINE.html#aa646fb0bf5f3674d1daba91dd0320017',1,'formatron.integrations.RWKV.PIPELINE.__init__()'],['../classformatron_1_1integrations_1_1transformers_1_1FormattersLogitsProcessor.html#aa70d2276eeb09fdf53066e4019df79df',1,'formatron.integrations.transformers.FormattersLogitsProcessor.__init__()'],['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#a0ee5e6edc8fc11dfd7406c140c13b7b9',1,'formatron.integrations.vllm.FormattersLogitsProcessor.__init__()'],['../classformatron_1_1schemas_1_1dict__inference_1_1FieldInfo.html#a0286ba9c9e6509ce23d530409209b5da',1,'formatron.schemas.dict_inference.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#abc61867418b7f30a3545e71c9b28e708',1,'formatron.schemas.json_schema.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#a4a5a010c6acef15f8fe2d4318223696b',1,'formatron.schemas.pydantic.FieldInfo.__init__(self, pydantic.fields.FieldInfo field)']]],
+ ['_5f_5finit_5f_5f_1',['__init__',['../classformatron_1_1extractor_1_1Extractor.html#a569fc7895a82f4d4b59866719219d4e0',1,'formatron.extractor.Extractor.__init__()'],['../classformatron_1_1extractor_1_1NonterminalExtractor.html#a45c14f79c14b539837ebdd26c3b5567b',1,'formatron.extractor.NonterminalExtractor.__init__()'],['../classformatron_1_1extractor_1_1LiteralExtractor.html#ab4da390ad7efaf5a3aab0e0ccb78fab3',1,'formatron.extractor.LiteralExtractor.__init__()'],['../classformatron_1_1extractor_1_1ChoiceExtractor.html#a1a91b31475c7348a3cf9fab97c6d26f0',1,'formatron.extractor.ChoiceExtractor.__init__()'],['../classformatron_1_1extractor_1_1SubstringExtractor.html#a843997315c77b9c7c6eb84ba7e02ff83',1,'formatron.extractor.SubstringExtractor.__init__()'],['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#a7a51edd3cc7c24370c809d91e07771dc',1,'formatron.formats.json.JsonExtractor.__init__()'],['../classformatron_1_1formats_1_1regex_1_1RegexExtractor.html#a6fc2f05d044cce49935c415248de5e5a',1,'formatron.formats.regex.RegexExtractor.__init__()'],['../classformatron_1_1formatter_1_1Formatter.html#a369269f53f32be2f1d92663670354515',1,'formatron.formatter.Formatter.__init__()'],['../classformatron_1_1formatter_1_1FormatterBuilder.html#abb13104747355cae16e6ad0c3067fac8',1,'formatron.formatter.FormatterBuilder.__init__()'],['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#adc94d2f2ddd06f966dca93079f17df8c',1,'formatron.integrations.exllamav2.FormatterFilter.__init__()'],['../classformatron_1_1integrations_1_1RWKV_1_1PIPELINE__ARGS.html#a53a892118d9b168024aaa6062f92cd7c',1,'formatron.integrations.RWKV.PIPELINE_ARGS.__init__()'],['../classformatron_1_1integrations_1_1RWKV_1_1PIPELINE.html#aa646fb0bf5f3674d1daba91dd0320017',1,'formatron.integrations.RWKV.PIPELINE.__init__()'],['../classformatron_1_1integrations_1_1transformers_1_1FormattersLogitsProcessor.html#aa70d2276eeb09fdf53066e4019df79df',1,'formatron.integrations.transformers.FormattersLogitsProcessor.__init__()'],['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#a0ee5e6edc8fc11dfd7406c140c13b7b9',1,'formatron.integrations.vllm.FormattersLogitsProcessor.__init__()'],['../classformatron_1_1schemas_1_1dict__inference_1_1FieldInfo.html#a0286ba9c9e6509ce23d530409209b5da',1,'formatron.schemas.dict_inference.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#abc61867418b7f30a3545e71c9b28e708',1,'formatron.schemas.json_schema.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#a4a5a010c6acef15f8fe2d4318223696b',1,'formatron.schemas.pydantic.FieldInfo.__init__()'],['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#a0c3cf51ceb503d4d195f5623d57e160b',1,'formatron.schemas.schema.TypeWithMetadata.__init__()']]],
['_5f_5frepr_5f_5f_2',['__repr__',['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#ad291e8df78d045d3364bc6a17582b416',1,'formatron::schemas::pydantic::FieldInfo']]],
['_5f_5fstr_5f_5f_3',['__str__',['../classformatron_1_1extractor_1_1Extractor.html#afe6a1f745fd56540ccff5fdc5d00f0a5',1,'formatron.extractor.Extractor.__str__()'],['../classformatron_1_1formatter_1_1Formatter.html#a827c993f0ac74abff6276b3af6058e3f',1,'formatron.formatter.Formatter.__str__()'],['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#a49ac1734cddfadc1b7721f57775890a6',1,'formatron.schemas.pydantic.FieldInfo.__str__()']]],
['_5fadd_5fcapture_5fname_4',['_add_capture_name',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a1e97daf55b4149be6aaa5dd747ed6146',1,'formatron::formatter::FormatterBuilder']]],
diff --git a/dev/search/functions_10.js b/dev/search/functions_10.js
index 073ecfa7..f44c4e1e 100644
--- a/dev/search/functions_10.js
+++ b/dev/search/functions_10.js
@@ -1,4 +1,4 @@
var searchData=
[
- ['use_5fbackground_5fworker_0',['use_background_worker',['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a9aa83a5922cefce88197d2cc3822a0c6',1,'formatron::integrations::exllamav2::FormatterFilter']]]
+ ['type_0',['type',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#ada7a24496aad9979411523441c53a6cf',1,'formatron::schemas::schema::TypeWithMetadata']]]
];
diff --git a/dev/search/functions_11.js b/dev/search/functions_11.js
new file mode 100644
index 00000000..073ecfa7
--- /dev/null
+++ b/dev/search/functions_11.js
@@ -0,0 +1,4 @@
+var searchData=
+[
+ ['use_5fbackground_5fworker_0',['use_background_worker',['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a9aa83a5922cefce88197d2cc3822a0c6',1,'formatron::integrations::exllamav2::FormatterFilter']]]
+];
diff --git a/dev/search/functions_b.js b/dev/search/functions_b.js
index 032f5ef9..374eaabe 100644
--- a/dev/search/functions_b.js
+++ b/dev/search/functions_b.js
@@ -1,4 +1,5 @@
var searchData=
[
- ['mask_5flogits_0',['mask_logits',['../classformatron_1_1formatter_1_1FormatterBase.html#ae8db7e92a900322ae5aa603b5c8f386f',1,'formatron.formatter.FormatterBase.mask_logits()'],['../classformatron_1_1formatter_1_1Formatter.html#a1068b4fa2167039fe04519ec4db65278',1,'formatron.formatter.Formatter.mask_logits()'],['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a7a0e2e459eccf822cf79457a121a3a74',1,'formatron.integrations.exllamav2.FormatterFilter.mask_logits()']]]
+ ['mask_5flogits_0',['mask_logits',['../classformatron_1_1formatter_1_1FormatterBase.html#ae8db7e92a900322ae5aa603b5c8f386f',1,'formatron.formatter.FormatterBase.mask_logits()'],['../classformatron_1_1formatter_1_1Formatter.html#a1068b4fa2167039fe04519ec4db65278',1,'formatron.formatter.Formatter.mask_logits()'],['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a7a0e2e459eccf822cf79457a121a3a74',1,'formatron.integrations.exllamav2.FormatterFilter.mask_logits()']]],
+ ['metadata_1',['metadata',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#af8604b758b8af6878a130a4f0f28389b',1,'formatron::schemas::schema::TypeWithMetadata']]]
];
diff --git a/dev/search/searchdata.js b/dev/search/searchdata.js
index 49ba374e..2e446c64 100644
--- a/dev/search/searchdata.js
+++ b/dev/search/searchdata.js
@@ -1,10 +1,10 @@
var indexSectionsWithContent =
{
0: "_abcdefghijklmnprstuv",
- 1: "cefjlnprs",
+ 1: "cefjlnprst",
2: "f",
3: "_cdefjprstv",
- 4: "_abcefghijkmnprsu",
+ 4: "_abcefghijkmnprstu",
5: "_cefgprs"
};
diff --git a/dev/search/variables_0.js b/dev/search/variables_0.js
index 62144f2e..09b11ea9 100644
--- a/dev/search/variables_0.js
+++ b/dev/search/variables_0.js
@@ -1,6 +1,6 @@
var searchData=
[
- ['_5fannotation_0',['_annotation',['../classformatron_1_1schemas_1_1dict__inference_1_1FieldInfo.html#af85ec1a61b7ef87729757cef077c4df4',1,'formatron.schemas.dict_inference.FieldInfo._annotation'],['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#a82c87a6773b72ee766add0dc893482b0',1,'formatron.schemas.json_schema.FieldInfo._annotation']]],
+ ['_5fannotation_0',['_annotation',['../classformatron_1_1schemas_1_1dict__inference_1_1FieldInfo.html#af85ec1a61b7ef87729757cef077c4df4',1,'formatron.schemas.dict_inference.FieldInfo._annotation'],['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#a82c87a6773b72ee766add0dc893482b0',1,'formatron.schemas.json_schema.FieldInfo._annotation'],['../classformatron_1_1schemas_1_1pydantic_1_1FieldInfo.html#aab00d20e817e3ea9fc15295a94e8242b',1,'formatron.schemas.pydantic.FieldInfo._annotation']]],
['_5fcapture_5fname_1',['_capture_name',['../classformatron_1_1extractor_1_1Extractor.html#a3299dc34a7276ab8ab553513048211d3',1,'formatron::extractor::Extractor']]],
['_5fcapture_5fnames_2',['_capture_names',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a68daf6b6bbd2f32843352dc6ea1f4b8f',1,'formatron::formatter::FormatterBuilder']]],
['_5fcaptures_3',['_captures',['../classformatron_1_1formatter_1_1Formatter.html#a43964a72280fd307cd74528657beeca3',1,'formatron::formatter::Formatter']]],
@@ -23,16 +23,18 @@ var searchData=
['_5flast_5finput_5fid_5flength_20',['_last_input_id_length',['../classformatron_1_1integrations_1_1transformers_1_1FormattersLogitsProcessor.html#a24c02e28fdbae4450af7527f93400fa7',1,'formatron.integrations.transformers.FormattersLogitsProcessor._last_input_id_length'],['../classformatron_1_1integrations_1_1vllm_1_1FormattersLogitsProcessor.html#aa6549c4f4130d1778f69e3e99942a87b',1,'formatron.integrations.vllm.FormattersLogitsProcessor._last_input_id_length']]],
['_5fliteral_21',['_literal',['../classformatron_1_1extractor_1_1LiteralExtractor.html#a333e99fa481e15e9d907d35cda8ee728',1,'formatron::extractor::LiteralExtractor']]],
['_5fmain_5frule_22',['_main_rule',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a3c3ba1934b9207c412202c5ef29b002a',1,'formatron::formatter::FormatterBuilder']]],
- ['_5fnonterminal_23',['_nonterminal',['../classformatron_1_1extractor_1_1NonterminalExtractor.html#a5c4c968b45e328b8caa4b2795ecc00fe',1,'formatron::extractor::NonterminalExtractor']]],
- ['_5fnonterminal_5fto_5fextractor_24',['_nonterminal_to_extractor',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a870a5075cfd903c77e5ee58b6c304e03',1,'formatron::formatter::FormatterBuilder']]],
- ['_5fpass_5ftokens_25',['_pass_tokens',['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a370eaf641dd803b2759b4e5fc7f74a1c',1,'formatron::integrations::exllamav2::FormatterFilter']]],
- ['_5fregex_26',['_regex',['../classformatron_1_1formats_1_1regex_1_1RegexExtractor.html#a1df60401933eef6cf5a1ff041f11ec46',1,'formatron::formats::regex::RegexExtractor']]],
- ['_5frequired_27',['_required',['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#a8ac1acf32bb578e121ef28a433857726',1,'formatron::schemas::json_schema::FieldInfo']]],
- ['_5frule_5fstr_28',['_rule_str',['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#aecf88428e414da080f11ed0ab1e13a65',1,'formatron::formats::json::JsonExtractor']]],
- ['_5frules_29',['_rules',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a62c61ad02e40526b73ca460d0cf1d12c',1,'formatron::formatter::FormatterBuilder']]],
- ['_5fstring_30',['_string',['../classformatron_1_1extractor_1_1SubstringExtractor.html#a3781b75c6c8c12f89fd70ea405e11293',1,'formatron::extractor::SubstringExtractor']]],
- ['_5fsuffix_5fautomaton_31',['_suffix_automaton',['../classformatron_1_1extractor_1_1SubstringExtractor.html#a97cb3468674873adfc85bc17ff1a9a97',1,'formatron::extractor::SubstringExtractor']]],
- ['_5fto_5fobject_32',['_to_object',['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#a2e72d806c8dffc0136231b81eb724355',1,'formatron::formats::json::JsonExtractor']]],
- ['_5ftoken_5fid_5for_5fbytes_33',['_token_id_or_bytes',['../classformatron_1_1formatter_1_1Formatter.html#adf232d46083546ae3363e4ce007a335b',1,'formatron::formatter::Formatter']]],
- ['_5ftype_5fto_5fnonterminals_34',['_type_to_nonterminals',['../namespaceformatron_1_1formats_1_1json.html#a003a1dac95634ac70f86d51e768945a4',1,'formatron::formats::json']]]
+ ['_5fmetadata_23',['_metadata',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#a34312895f9d497d5c35cf372f9c498f3',1,'formatron::schemas::schema::TypeWithMetadata']]],
+ ['_5fnonterminal_24',['_nonterminal',['../classformatron_1_1extractor_1_1NonterminalExtractor.html#a5c4c968b45e328b8caa4b2795ecc00fe',1,'formatron::extractor::NonterminalExtractor']]],
+ ['_5fnonterminal_5fto_5fextractor_25',['_nonterminal_to_extractor',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a870a5075cfd903c77e5ee58b6c304e03',1,'formatron::formatter::FormatterBuilder']]],
+ ['_5fpass_5ftokens_26',['_pass_tokens',['../classformatron_1_1integrations_1_1exllamav2_1_1FormatterFilter.html#a370eaf641dd803b2759b4e5fc7f74a1c',1,'formatron::integrations::exllamav2::FormatterFilter']]],
+ ['_5fregex_27',['_regex',['../classformatron_1_1formats_1_1regex_1_1RegexExtractor.html#a1df60401933eef6cf5a1ff041f11ec46',1,'formatron::formats::regex::RegexExtractor']]],
+ ['_5frequired_28',['_required',['../classformatron_1_1schemas_1_1json__schema_1_1FieldInfo.html#a8ac1acf32bb578e121ef28a433857726',1,'formatron::schemas::json_schema::FieldInfo']]],
+ ['_5frule_5fstr_29',['_rule_str',['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#aecf88428e414da080f11ed0ab1e13a65',1,'formatron::formats::json::JsonExtractor']]],
+ ['_5frules_30',['_rules',['../classformatron_1_1formatter_1_1FormatterBuilder.html#a62c61ad02e40526b73ca460d0cf1d12c',1,'formatron::formatter::FormatterBuilder']]],
+ ['_5fstring_31',['_string',['../classformatron_1_1extractor_1_1SubstringExtractor.html#a3781b75c6c8c12f89fd70ea405e11293',1,'formatron::extractor::SubstringExtractor']]],
+ ['_5fsuffix_5fautomaton_32',['_suffix_automaton',['../classformatron_1_1extractor_1_1SubstringExtractor.html#a97cb3468674873adfc85bc17ff1a9a97',1,'formatron::extractor::SubstringExtractor']]],
+ ['_5fto_5fobject_33',['_to_object',['../classformatron_1_1formats_1_1json_1_1JsonExtractor.html#a2e72d806c8dffc0136231b81eb724355',1,'formatron::formats::json::JsonExtractor']]],
+ ['_5ftoken_5fid_5for_5fbytes_34',['_token_id_or_bytes',['../classformatron_1_1formatter_1_1Formatter.html#adf232d46083546ae3363e4ce007a335b',1,'formatron::formatter::Formatter']]],
+ ['_5ftype_35',['_type',['../classformatron_1_1schemas_1_1schema_1_1TypeWithMetadata.html#a4d1ea7d59f700634eb2545ce3d6cf324',1,'formatron::schemas::schema::TypeWithMetadata']]],
+ ['_5ftype_5fto_5fnonterminals_36',['_type_to_nonterminals',['../namespaceformatron_1_1formats_1_1json.html#a003a1dac95634ac70f86d51e768945a4',1,'formatron::formats::json']]]
];