···232232 }
233233 /// State trait tracking which required fields have been set
234234 pub trait State: sealed::Sealed {
235235- type Uri;
236235 type Description;
236236+ type Uri;
237237 type Title;
238238 }
239239 /// Empty state - all required fields are unset
240240 pub struct Empty(());
241241 impl sealed::Sealed for Empty {}
242242 impl State for Empty {
243243+ type Description = Unset;
243244 type Uri = Unset;
244244- type Description = Unset;
245245 type Title = Unset;
246246 }
247247- ///State transition - sets the `uri` field to Set
248248- pub struct SetUri<St: State = Empty>(PhantomData<fn() -> St>);
249249- impl<St: State> sealed::Sealed for SetUri<St> {}
250250- impl<St: State> State for SetUri<St> {
251251- type Uri = Set<members::uri>;
252252- type Description = St::Description;
253253- type Title = St::Title;
254254- }
255247 ///State transition - sets the `description` field to Set
256248 pub struct SetDescription<St: State = Empty>(PhantomData<fn() -> St>);
257249 impl<St: State> sealed::Sealed for SetDescription<St> {}
258250 impl<St: State> State for SetDescription<St> {
251251+ type Description = Set<members::description>;
259252 type Uri = St::Uri;
260260- type Description = Set<members::description>;
253253+ type Title = St::Title;
254254+ }
255255+ ///State transition - sets the `uri` field to Set
256256+ pub struct SetUri<St: State = Empty>(PhantomData<fn() -> St>);
257257+ impl<St: State> sealed::Sealed for SetUri<St> {}
258258+ impl<St: State> State for SetUri<St> {
259259+ type Description = St::Description;
260260+ type Uri = Set<members::uri>;
261261 type Title = St::Title;
262262 }
263263 ///State transition - sets the `title` field to Set
264264 pub struct SetTitle<St: State = Empty>(PhantomData<fn() -> St>);
265265 impl<St: State> sealed::Sealed for SetTitle<St> {}
266266 impl<St: State> State for SetTitle<St> {
267267- type Uri = St::Uri;
268267 type Description = St::Description;
268268+ type Uri = St::Uri;
269269 type Title = Set<members::title>;
270270 }
271271 /// Marker types for field names
272272 #[allow(non_camel_case_types)]
273273 pub mod members {
274274+ ///Marker type for the `description` field
275275+ pub struct description(());
274276 ///Marker type for the `uri` field
275277 pub struct uri(());
276276- ///Marker type for the `description` field
277277- pub struct description(());
278278 ///Marker type for the `title` field
279279 pub struct title(());
280280 }
···295295 _type: ::core::marker::PhantomData<fn() -> S>,
296296}
297297298298-impl External<DefaultStr> {
298298+impl External<jacquard_common::DefaultStr> {
299299 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
300300 pub fn new() -> ExternalBuilder<external_state::Empty, jacquard_common::DefaultStr> {
301301 ExternalBuilder::new()
···410410impl<St, S: jacquard_common::BosStr> ExternalBuilder<St, S>
411411where
412412 St: external_state::State,
413413- St::Uri: external_state::IsSet,
414413 St::Description: external_state::IsSet,
414414+ St::Uri: external_state::IsSet,
415415 St::Title: external_state::IsSet,
416416{
417417 /// Build the final struct.
···666666 _type: ::core::marker::PhantomData<fn() -> S>,
667667}
668668669669-impl ExternalRecord<DefaultStr> {
669669+impl ExternalRecord<jacquard_common::DefaultStr> {
670670 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
671671 pub fn new() -> ExternalRecordBuilder<
672672 external_record_state::Empty,
···797797 _type: ::core::marker::PhantomData<fn() -> S>,
798798}
799799800800-impl View<DefaultStr> {
800800+impl View<jacquard_common::DefaultStr> {
801801 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
802802 pub fn new() -> ViewBuilder<view_state::Empty, jacquard_common::DefaultStr> {
803803 ViewBuilder::new()
···952952 _type: ::core::marker::PhantomData<fn() -> S>,
953953}
954954955955-impl ViewExternal<DefaultStr> {
955955+impl ViewExternal<jacquard_common::DefaultStr> {
956956 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
957957 pub fn new() -> ViewExternalBuilder<
958958 view_external_state::Empty,
···310310 }
311311 /// State trait tracking which required fields have been set
312312 pub trait State: sealed::Sealed {
313313- type ByteStart;
314313 type ByteEnd;
314314+ type ByteStart;
315315 }
316316 /// Empty state - all required fields are unset
317317 pub struct Empty(());
318318 impl sealed::Sealed for Empty {}
319319 impl State for Empty {
320320+ type ByteEnd = Unset;
320321 type ByteStart = Unset;
321321- type ByteEnd = Unset;
322322- }
323323- ///State transition - sets the `byte_start` field to Set
324324- pub struct SetByteStart<St: State = Empty>(PhantomData<fn() -> St>);
325325- impl<St: State> sealed::Sealed for SetByteStart<St> {}
326326- impl<St: State> State for SetByteStart<St> {
327327- type ByteStart = Set<members::byte_start>;
328328- type ByteEnd = St::ByteEnd;
329322 }
330323 ///State transition - sets the `byte_end` field to Set
331324 pub struct SetByteEnd<St: State = Empty>(PhantomData<fn() -> St>);
332325 impl<St: State> sealed::Sealed for SetByteEnd<St> {}
333326 impl<St: State> State for SetByteEnd<St> {
334334- type ByteStart = St::ByteStart;
335327 type ByteEnd = Set<members::byte_end>;
328328+ type ByteStart = St::ByteStart;
329329+ }
330330+ ///State transition - sets the `byte_start` field to Set
331331+ pub struct SetByteStart<St: State = Empty>(PhantomData<fn() -> St>);
332332+ impl<St: State> sealed::Sealed for SetByteStart<St> {}
333333+ impl<St: State> State for SetByteStart<St> {
334334+ type ByteEnd = St::ByteEnd;
335335+ type ByteStart = Set<members::byte_start>;
336336 }
337337 /// Marker types for field names
338338 #[allow(non_camel_case_types)]
339339 pub mod members {
340340+ ///Marker type for the `byte_end` field
341341+ pub struct byte_end(());
340342 ///Marker type for the `byte_start` field
341343 pub struct byte_start(());
342342- ///Marker type for the `byte_end` field
343343- pub struct byte_end(());
344344 }
345345}
346346···354354 _type: ::core::marker::PhantomData<fn() -> S>,
355355}
356356357357-impl ByteSlice<DefaultStr> {
357357+impl ByteSlice<jacquard_common::DefaultStr> {
358358 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
359359 pub fn new() -> ByteSliceBuilder<
360360 byte_slice_state::Empty,
···434434impl<St, S: jacquard_common::BosStr> ByteSliceBuilder<St, S>
435435where
436436 St: byte_slice_state::State,
437437- St::ByteStart: byte_slice_state::IsSet,
438437 St::ByteEnd: byte_slice_state::IsSet,
438438+ St::ByteStart: byte_slice_state::IsSet,
439439{
440440 /// Build the final struct.
441441 pub fn build(self) -> ByteSlice<S> {
···699699 _type: ::core::marker::PhantomData<fn() -> S>,
700700}
701701702702-impl Link<DefaultStr> {
702702+impl Link<jacquard_common::DefaultStr> {
703703 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
704704 pub fn new() -> LinkBuilder<link_state::Empty, jacquard_common::DefaultStr> {
705705 LinkBuilder::new()
···838838 _type: ::core::marker::PhantomData<fn() -> S>,
839839}
840840841841-impl Facet<DefaultStr> {
841841+impl Facet<jacquard_common::DefaultStr> {
842842 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
843843 pub fn new() -> FacetBuilder<facet_state::Empty, jacquard_common::DefaultStr> {
844844 FacetBuilder::new()
···984984 _type: ::core::marker::PhantomData<fn() -> S>,
985985}
986986987987-impl Mention<DefaultStr> {
987987+impl Mention<jacquard_common::DefaultStr> {
988988 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
989989 pub fn new() -> MentionBuilder<mention_state::Empty, jacquard_common::DefaultStr> {
990990 MentionBuilder::new()
···798798 /// State trait tracking which required fields have been set
799799 pub trait State: sealed::Sealed {
800800 type Uri;
801801- type Val;
802801 type Src;
803802 type Cts;
803803+ type Val;
804804 }
805805 /// Empty state - all required fields are unset
806806 pub struct Empty(());
807807 impl sealed::Sealed for Empty {}
808808 impl State for Empty {
809809 type Uri = Unset;
810810- type Val = Unset;
811810 type Src = Unset;
812811 type Cts = Unset;
812812+ type Val = Unset;
813813 }
814814 ///State transition - sets the `uri` field to Set
815815 pub struct SetUri<St: State = Empty>(PhantomData<fn() -> St>);
816816 impl<St: State> sealed::Sealed for SetUri<St> {}
817817 impl<St: State> State for SetUri<St> {
818818 type Uri = Set<members::uri>;
819819- type Val = St::Val;
820819 type Src = St::Src;
821820 type Cts = St::Cts;
822822- }
823823- ///State transition - sets the `val` field to Set
824824- pub struct SetVal<St: State = Empty>(PhantomData<fn() -> St>);
825825- impl<St: State> sealed::Sealed for SetVal<St> {}
826826- impl<St: State> State for SetVal<St> {
827827- type Uri = St::Uri;
828828- type Val = Set<members::val>;
829829- type Src = St::Src;
830830- type Cts = St::Cts;
821821+ type Val = St::Val;
831822 }
832823 ///State transition - sets the `src` field to Set
833824 pub struct SetSrc<St: State = Empty>(PhantomData<fn() -> St>);
834825 impl<St: State> sealed::Sealed for SetSrc<St> {}
835826 impl<St: State> State for SetSrc<St> {
836827 type Uri = St::Uri;
837837- type Val = St::Val;
838828 type Src = Set<members::src>;
839829 type Cts = St::Cts;
830830+ type Val = St::Val;
840831 }
841832 ///State transition - sets the `cts` field to Set
842833 pub struct SetCts<St: State = Empty>(PhantomData<fn() -> St>);
843834 impl<St: State> sealed::Sealed for SetCts<St> {}
844835 impl<St: State> State for SetCts<St> {
845836 type Uri = St::Uri;
837837+ type Src = St::Src;
838838+ type Cts = Set<members::cts>;
846839 type Val = St::Val;
840840+ }
841841+ ///State transition - sets the `val` field to Set
842842+ pub struct SetVal<St: State = Empty>(PhantomData<fn() -> St>);
843843+ impl<St: State> sealed::Sealed for SetVal<St> {}
844844+ impl<St: State> State for SetVal<St> {
845845+ type Uri = St::Uri;
847846 type Src = St::Src;
848848- type Cts = Set<members::cts>;
847847+ type Cts = St::Cts;
848848+ type Val = Set<members::val>;
849849 }
850850 /// Marker types for field names
851851 #[allow(non_camel_case_types)]
852852 pub mod members {
853853 ///Marker type for the `uri` field
854854 pub struct uri(());
855855- ///Marker type for the `val` field
856856- pub struct val(());
857855 ///Marker type for the `src` field
858856 pub struct src(());
859857 ///Marker type for the `cts` field
860858 pub struct cts(());
859859+ ///Marker type for the `val` field
860860+ pub struct val(());
861861 }
862862}
863863···881881 _type: ::core::marker::PhantomData<fn() -> S>,
882882}
883883884884-impl Label<DefaultStr> {
884884+impl Label<jacquard_common::DefaultStr> {
885885 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
886886 pub fn new() -> LabelBuilder<label_state::Empty, jacquard_common::DefaultStr> {
887887 LabelBuilder::new()
···10801080where
10811081 St: label_state::State,
10821082 St::Uri: label_state::IsSet,
10831083- St::Val: label_state::IsSet,
10841083 St::Src: label_state::IsSet,
10851084 St::Cts: label_state::IsSet,
10851085+ St::Val: label_state::IsSet,
10861086{
10871087 /// Build the final struct.
10881088 pub fn build(self) -> Label<S> {
···15361536 }
15371537 /// State trait tracking which required fields have been set
15381538 pub trait State: sealed::Sealed {
15391539- type Severity;
15401539 type Locales;
15411541- type Blurs;
15401540+ type Severity;
15421541 type Identifier;
15421542+ type Blurs;
15431543 }
15441544 /// Empty state - all required fields are unset
15451545 pub struct Empty(());
15461546 impl sealed::Sealed for Empty {}
15471547 impl State for Empty {
15481548- type Severity = Unset;
15491548 type Locales = Unset;
15501550- type Blurs = Unset;
15491549+ type Severity = Unset;
15511550 type Identifier = Unset;
15521552- }
15531553- ///State transition - sets the `severity` field to Set
15541554- pub struct SetSeverity<St: State = Empty>(PhantomData<fn() -> St>);
15551555- impl<St: State> sealed::Sealed for SetSeverity<St> {}
15561556- impl<St: State> State for SetSeverity<St> {
15571557- type Severity = Set<members::severity>;
15581558- type Locales = St::Locales;
15591559- type Blurs = St::Blurs;
15601560- type Identifier = St::Identifier;
15511551+ type Blurs = Unset;
15611552 }
15621553 ///State transition - sets the `locales` field to Set
15631554 pub struct SetLocales<St: State = Empty>(PhantomData<fn() -> St>);
15641555 impl<St: State> sealed::Sealed for SetLocales<St> {}
15651556 impl<St: State> State for SetLocales<St> {
15571557+ type Locales = Set<members::locales>;
15661558 type Severity = St::Severity;
15671567- type Locales = Set<members::locales>;
15591559+ type Identifier = St::Identifier;
15681560 type Blurs = St::Blurs;
15691569- type Identifier = St::Identifier;
15701561 }
15711571- ///State transition - sets the `blurs` field to Set
15721572- pub struct SetBlurs<St: State = Empty>(PhantomData<fn() -> St>);
15731573- impl<St: State> sealed::Sealed for SetBlurs<St> {}
15741574- impl<St: State> State for SetBlurs<St> {
15751575- type Severity = St::Severity;
15621562+ ///State transition - sets the `severity` field to Set
15631563+ pub struct SetSeverity<St: State = Empty>(PhantomData<fn() -> St>);
15641564+ impl<St: State> sealed::Sealed for SetSeverity<St> {}
15651565+ impl<St: State> State for SetSeverity<St> {
15761566 type Locales = St::Locales;
15771577- type Blurs = Set<members::blurs>;
15671567+ type Severity = Set<members::severity>;
15781568 type Identifier = St::Identifier;
15691569+ type Blurs = St::Blurs;
15791570 }
15801571 ///State transition - sets the `identifier` field to Set
15811572 pub struct SetIdentifier<St: State = Empty>(PhantomData<fn() -> St>);
15821573 impl<St: State> sealed::Sealed for SetIdentifier<St> {}
15831574 impl<St: State> State for SetIdentifier<St> {
15751575+ type Locales = St::Locales;
15841576 type Severity = St::Severity;
15771577+ type Identifier = Set<members::identifier>;
15781578+ type Blurs = St::Blurs;
15791579+ }
15801580+ ///State transition - sets the `blurs` field to Set
15811581+ pub struct SetBlurs<St: State = Empty>(PhantomData<fn() -> St>);
15821582+ impl<St: State> sealed::Sealed for SetBlurs<St> {}
15831583+ impl<St: State> State for SetBlurs<St> {
15851584 type Locales = St::Locales;
15861586- type Blurs = St::Blurs;
15871587- type Identifier = Set<members::identifier>;
15851585+ type Severity = St::Severity;
15861586+ type Identifier = St::Identifier;
15871587+ type Blurs = Set<members::blurs>;
15881588 }
15891589 /// Marker types for field names
15901590 #[allow(non_camel_case_types)]
15911591 pub mod members {
15921592+ ///Marker type for the `locales` field
15931593+ pub struct locales(());
15921594 ///Marker type for the `severity` field
15931595 pub struct severity(());
15941594- ///Marker type for the `locales` field
15951595- pub struct locales(());
15961596+ ///Marker type for the `identifier` field
15971597+ pub struct identifier(());
15961598 ///Marker type for the `blurs` field
15971599 pub struct blurs(());
15981598- ///Marker type for the `identifier` field
15991599- pub struct identifier(());
16001600 }
16011601}
16021602···16191619 _type: ::core::marker::PhantomData<fn() -> S>,
16201620}
1621162116221622-impl LabelValueDefinition<DefaultStr> {
16221622+impl LabelValueDefinition<jacquard_common::DefaultStr> {
16231623 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
16241624 pub fn new() -> LabelValueDefinitionBuilder<
16251625 label_value_definition_state::Empty,
···17881788impl<St, S: jacquard_common::BosStr> LabelValueDefinitionBuilder<St, S>
17891789where
17901790 St: label_value_definition_state::State,
17911791- St::Severity: label_value_definition_state::IsSet,
17921791 St::Locales: label_value_definition_state::IsSet,
17931793- St::Blurs: label_value_definition_state::IsSet,
17921792+ St::Severity: label_value_definition_state::IsSet,
17941793 St::Identifier: label_value_definition_state::IsSet,
17941794+ St::Blurs: label_value_definition_state::IsSet,
17951795{
17961796 /// Build the final struct.
17971797 pub fn build(self) -> LabelValueDefinition<S> {
···18351835 }
18361836 /// State trait tracking which required fields have been set
18371837 pub trait State: sealed::Sealed {
18381838+ type Description;
18381839 type Lang;
18391840 type Name;
18401840- type Description;
18411841 }
18421842 /// Empty state - all required fields are unset
18431843 pub struct Empty(());
18441844 impl sealed::Sealed for Empty {}
18451845 impl State for Empty {
18461846+ type Description = Unset;
18461847 type Lang = Unset;
18471848 type Name = Unset;
18481848- type Description = Unset;
18491849+ }
18501850+ ///State transition - sets the `description` field to Set
18511851+ pub struct SetDescription<St: State = Empty>(PhantomData<fn() -> St>);
18521852+ impl<St: State> sealed::Sealed for SetDescription<St> {}
18531853+ impl<St: State> State for SetDescription<St> {
18541854+ type Description = Set<members::description>;
18551855+ type Lang = St::Lang;
18561856+ type Name = St::Name;
18491857 }
18501858 ///State transition - sets the `lang` field to Set
18511859 pub struct SetLang<St: State = Empty>(PhantomData<fn() -> St>);
18521860 impl<St: State> sealed::Sealed for SetLang<St> {}
18531861 impl<St: State> State for SetLang<St> {
18621862+ type Description = St::Description;
18541863 type Lang = Set<members::lang>;
18551864 type Name = St::Name;
18561856- type Description = St::Description;
18571865 }
18581866 ///State transition - sets the `name` field to Set
18591867 pub struct SetName<St: State = Empty>(PhantomData<fn() -> St>);
18601868 impl<St: State> sealed::Sealed for SetName<St> {}
18611869 impl<St: State> State for SetName<St> {
18621862- type Lang = St::Lang;
18631863- type Name = Set<members::name>;
18641870 type Description = St::Description;
18651865- }
18661866- ///State transition - sets the `description` field to Set
18671867- pub struct SetDescription<St: State = Empty>(PhantomData<fn() -> St>);
18681868- impl<St: State> sealed::Sealed for SetDescription<St> {}
18691869- impl<St: State> State for SetDescription<St> {
18701871 type Lang = St::Lang;
18711871- type Name = St::Name;
18721872- type Description = Set<members::description>;
18721872+ type Name = Set<members::name>;
18731873 }
18741874 /// Marker types for field names
18751875 #[allow(non_camel_case_types)]
18761876 pub mod members {
18771877+ ///Marker type for the `description` field
18781878+ pub struct description(());
18771879 ///Marker type for the `lang` field
18781880 pub struct lang(());
18791881 ///Marker type for the `name` field
18801882 pub struct name(());
18811881- ///Marker type for the `description` field
18821882- pub struct description(());
18831883 }
18841884}
18851885···18971897 _type: ::core::marker::PhantomData<fn() -> S>,
18981898}
1899189919001900-impl LabelValueDefinitionStrings<DefaultStr> {
19001900+impl LabelValueDefinitionStrings<jacquard_common::DefaultStr> {
19011901 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
19021902 pub fn new() -> LabelValueDefinitionStringsBuilder<
19031903 label_value_definition_strings_state::Empty,
···20132013impl<St, S: jacquard_common::BosStr> LabelValueDefinitionStringsBuilder<St, S>
20142014where
20152015 St: label_value_definition_strings_state::State,
20162016+ St::Description: label_value_definition_strings_state::IsSet,
20162017 St::Lang: label_value_definition_strings_state::IsSet,
20172018 St::Name: label_value_definition_strings_state::IsSet,
20182018- St::Description: label_value_definition_strings_state::IsSet,
20192019{
20202020 /// Build the final struct.
20212021 pub fn build(self) -> LabelValueDefinitionStrings<S> {
···20872087 _type: ::core::marker::PhantomData<fn() -> S>,
20882088}
2089208920902090-impl SelfLabels<DefaultStr> {
20902090+impl SelfLabels<jacquard_common::DefaultStr> {
20912091 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
20922092 pub fn new() -> SelfLabelsBuilder<
20932093 self_labels_state::Empty,
···104104 _type: ::core::marker::PhantomData<fn() -> S>,
105105}
106106107107-impl StrongRef<DefaultStr> {
107107+impl StrongRef<jacquard_common::DefaultStr> {
108108 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
109109 pub fn new() -> StrongRefBuilder<
110110 strong_ref_state::Empty,
···371371 _type: ::core::marker::PhantomData<fn() -> S>,
372372}
373373374374-impl CollectionRecord<DefaultStr> {
374374+impl CollectionRecord<jacquard_common::DefaultStr> {
375375 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
376376 pub fn new() -> CollectionRecordBuilder<
377377 collection_record_state::Empty,
···264264 }
265265 /// State trait tracking which required fields have been set
266266 pub trait State: sealed::Sealed {
267267- type Owner;
268267 type Identifier;
268268+ type Owner;
269269 }
270270 /// Empty state - all required fields are unset
271271 pub struct Empty(());
272272 impl sealed::Sealed for Empty {}
273273 impl State for Empty {
274274- type Owner = Unset;
275274 type Identifier = Unset;
276276- }
277277- ///State transition - sets the `owner` field to Set
278278- pub struct SetOwner<St: State = Empty>(PhantomData<fn() -> St>);
279279- impl<St: State> sealed::Sealed for SetOwner<St> {}
280280- impl<St: State> State for SetOwner<St> {
281281- type Owner = Set<members::owner>;
282282- type Identifier = St::Identifier;
275275+ type Owner = Unset;
283276 }
284277 ///State transition - sets the `identifier` field to Set
285278 pub struct SetIdentifier<St: State = Empty>(PhantomData<fn() -> St>);
286279 impl<St: State> sealed::Sealed for SetIdentifier<St> {}
287280 impl<St: State> State for SetIdentifier<St> {
288288- type Owner = St::Owner;
289281 type Identifier = Set<members::identifier>;
282282+ type Owner = St::Owner;
283283+ }
284284+ ///State transition - sets the `owner` field to Set
285285+ pub struct SetOwner<St: State = Empty>(PhantomData<fn() -> St>);
286286+ impl<St: State> sealed::Sealed for SetOwner<St> {}
287287+ impl<St: State> State for SetOwner<St> {
288288+ type Identifier = St::Identifier;
289289+ type Owner = Set<members::owner>;
290290 }
291291 /// Marker types for field names
292292 #[allow(non_camel_case_types)]
293293 pub mod members {
294294+ ///Marker type for the `identifier` field
295295+ pub struct identifier(());
294296 ///Marker type for the `owner` field
295297 pub struct owner(());
296296- ///Marker type for the `identifier` field
297297- pub struct identifier(());
298298 }
299299}
300300···312312 _type: ::core::marker::PhantomData<fn() -> S>,
313313}
314314315315-impl DidRecord<DefaultStr> {
315315+impl DidRecord<jacquard_common::DefaultStr> {
316316 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
317317 pub fn new() -> DidRecordBuilder<
318318 did_record_state::Empty,
···405405impl<St, S: jacquard_common::BosStr> DidRecordBuilder<St, S>
406406where
407407 St: did_record_state::State,
408408- St::Owner: did_record_state::IsSet,
409408 St::Identifier: did_record_state::IsSet,
409409+ St::Owner: did_record_state::IsSet,
410410{
411411 /// Build the final struct.
412412 pub fn build(self) -> DidRecord<S> {
···180180 _type: ::core::marker::PhantomData<fn() -> S>,
181181}
182182183183-impl OptionRecord<DefaultStr> {
183183+impl OptionRecord<jacquard_common::DefaultStr> {
184184 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
185185 pub fn new() -> OptionRecordBuilder<
186186 option_record_state::Empty,
···149149 _type: ::core::marker::PhantomData<fn() -> S>,
150150}
151151152152-impl Foo<DefaultStr> {
152152+impl Foo<jacquard_common::DefaultStr> {
153153 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
154154 pub fn new() -> FooBuilder<foo_state::Empty, jacquard_common::DefaultStr> {
155155 FooBuilder::new()
···404404 _type: ::core::marker::PhantomData<fn() -> S>,
405405}
406406407407-impl Collision<DefaultStr> {
407407+impl Collision<jacquard_common::DefaultStr> {
408408 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
409409 pub fn new() -> CollisionBuilder<
410410 collision_state::Empty,
···179179 }
180180 /// State trait tracking which required fields have been set
181181 pub trait State: sealed::Sealed {
182182+ type Description;
182183 type Title;
183184 type Uri;
184184- type Description;
185185 }
186186 /// Empty state - all required fields are unset
187187 pub struct Empty(());
188188 impl sealed::Sealed for Empty {}
189189 impl State for Empty {
190190+ type Description = Unset;
190191 type Title = Unset;
191192 type Uri = Unset;
192192- type Description = Unset;
193193+ }
194194+ ///State transition - sets the `description` field to Set
195195+ pub struct SetDescription<St: State = Empty>(PhantomData<fn() -> St>);
196196+ impl<St: State> sealed::Sealed for SetDescription<St> {}
197197+ impl<St: State> State for SetDescription<St> {
198198+ type Description = Set<members::description>;
199199+ type Title = St::Title;
200200+ type Uri = St::Uri;
193201 }
194202 ///State transition - sets the `title` field to Set
195203 pub struct SetTitle<St: State = Empty>(PhantomData<fn() -> St>);
196204 impl<St: State> sealed::Sealed for SetTitle<St> {}
197205 impl<St: State> State for SetTitle<St> {
206206+ type Description = St::Description;
198207 type Title = Set<members::title>;
199208 type Uri = St::Uri;
200200- type Description = St::Description;
201209 }
202210 ///State transition - sets the `uri` field to Set
203211 pub struct SetUri<St: State = Empty>(PhantomData<fn() -> St>);
204212 impl<St: State> sealed::Sealed for SetUri<St> {}
205213 impl<St: State> State for SetUri<St> {
206206- type Title = St::Title;
207207- type Uri = Set<members::uri>;
208214 type Description = St::Description;
209209- }
210210- ///State transition - sets the `description` field to Set
211211- pub struct SetDescription<St: State = Empty>(PhantomData<fn() -> St>);
212212- impl<St: State> sealed::Sealed for SetDescription<St> {}
213213- impl<St: State> State for SetDescription<St> {
214215 type Title = St::Title;
215215- type Uri = St::Uri;
216216- type Description = Set<members::description>;
216216+ type Uri = Set<members::uri>;
217217 }
218218 /// Marker types for field names
219219 #[allow(non_camel_case_types)]
220220 pub mod members {
221221+ ///Marker type for the `description` field
222222+ pub struct description(());
221223 ///Marker type for the `title` field
222224 pub struct title(());
223225 ///Marker type for the `uri` field
224226 pub struct uri(());
225225- ///Marker type for the `description` field
226226- pub struct description(());
227227 }
228228}
229229···343343impl<St, S: BosStr> ExternalBuilder<St, S>
344344where
345345 St: external_state::State,
346346+ St::Description: external_state::IsSet,
346347 St::Title: external_state::IsSet,
347348 St::Uri: external_state::IsSet,
348348- St::Description: external_state::IsSet,
349349{
350350 /// Build the final struct.
351351 pub fn build(self) -> External<S> {
···749749 }
750750 /// State trait tracking which required fields have been set
751751 pub trait State: sealed::Sealed {
752752- type Title;
753752 type Description;
754753 type Uri;
754754+ type Title;
755755 }
756756 /// Empty state - all required fields are unset
757757 pub struct Empty(());
758758 impl sealed::Sealed for Empty {}
759759 impl State for Empty {
760760- type Title = Unset;
761760 type Description = Unset;
762761 type Uri = Unset;
763763- }
764764- ///State transition - sets the `title` field to Set
765765- pub struct SetTitle<St: State = Empty>(PhantomData<fn() -> St>);
766766- impl<St: State> sealed::Sealed for SetTitle<St> {}
767767- impl<St: State> State for SetTitle<St> {
768768- type Title = Set<members::title>;
769769- type Description = St::Description;
770770- type Uri = St::Uri;
762762+ type Title = Unset;
771763 }
772764 ///State transition - sets the `description` field to Set
773765 pub struct SetDescription<St: State = Empty>(PhantomData<fn() -> St>);
774766 impl<St: State> sealed::Sealed for SetDescription<St> {}
775767 impl<St: State> State for SetDescription<St> {
776776- type Title = St::Title;
777768 type Description = Set<members::description>;
778769 type Uri = St::Uri;
770770+ type Title = St::Title;
779771 }
780772 ///State transition - sets the `uri` field to Set
781773 pub struct SetUri<St: State = Empty>(PhantomData<fn() -> St>);
782774 impl<St: State> sealed::Sealed for SetUri<St> {}
783775 impl<St: State> State for SetUri<St> {
784784- type Title = St::Title;
785776 type Description = St::Description;
786777 type Uri = Set<members::uri>;
778778+ type Title = St::Title;
779779+ }
780780+ ///State transition - sets the `title` field to Set
781781+ pub struct SetTitle<St: State = Empty>(PhantomData<fn() -> St>);
782782+ impl<St: State> sealed::Sealed for SetTitle<St> {}
783783+ impl<St: State> State for SetTitle<St> {
784784+ type Description = St::Description;
785785+ type Uri = St::Uri;
786786+ type Title = Set<members::title>;
787787 }
788788 /// Marker types for field names
789789 #[allow(non_camel_case_types)]
790790 pub mod members {
791791- ///Marker type for the `title` field
792792- pub struct title(());
793791 ///Marker type for the `description` field
794792 pub struct description(());
795793 ///Marker type for the `uri` field
796794 pub struct uri(());
795795+ ///Marker type for the `title` field
796796+ pub struct title(());
797797 }
798798}
799799···913913impl<St, S: BosStr> ViewExternalBuilder<St, S>
914914where
915915 St: view_external_state::State,
916916- St::Title: view_external_state::IsSet,
917916 St::Description: view_external_state::IsSet,
918917 St::Uri: view_external_state::IsSet,
918918+ St::Title: view_external_state::IsSet,
919919{
920920 /// Build the final struct.
921921 pub fn build(self) -> ViewExternal<S> {
···219219 }
220220 /// State trait tracking which required fields have been set
221221 pub trait State: sealed::Sealed {
222222- type ByteStart;
223222 type ByteEnd;
223223+ type ByteStart;
224224 }
225225 /// Empty state - all required fields are unset
226226 pub struct Empty(());
227227 impl sealed::Sealed for Empty {}
228228 impl State for Empty {
229229- type ByteStart = Unset;
230229 type ByteEnd = Unset;
231231- }
232232- ///State transition - sets the `byte_start` field to Set
233233- pub struct SetByteStart<St: State = Empty>(PhantomData<fn() -> St>);
234234- impl<St: State> sealed::Sealed for SetByteStart<St> {}
235235- impl<St: State> State for SetByteStart<St> {
236236- type ByteStart = Set<members::byte_start>;
237237- type ByteEnd = St::ByteEnd;
230230+ type ByteStart = Unset;
238231 }
239232 ///State transition - sets the `byte_end` field to Set
240233 pub struct SetByteEnd<St: State = Empty>(PhantomData<fn() -> St>);
241234 impl<St: State> sealed::Sealed for SetByteEnd<St> {}
242235 impl<St: State> State for SetByteEnd<St> {
243243- type ByteStart = St::ByteStart;
244236 type ByteEnd = Set<members::byte_end>;
237237+ type ByteStart = St::ByteStart;
238238+ }
239239+ ///State transition - sets the `byte_start` field to Set
240240+ pub struct SetByteStart<St: State = Empty>(PhantomData<fn() -> St>);
241241+ impl<St: State> sealed::Sealed for SetByteStart<St> {}
242242+ impl<St: State> State for SetByteStart<St> {
243243+ type ByteEnd = St::ByteEnd;
244244+ type ByteStart = Set<members::byte_start>;
245245 }
246246 /// Marker types for field names
247247 #[allow(non_camel_case_types)]
248248 pub mod members {
249249- ///Marker type for the `byte_start` field
250250- pub struct byte_start(());
251249 ///Marker type for the `byte_end` field
252250 pub struct byte_end(());
251251+ ///Marker type for the `byte_start` field
252252+ pub struct byte_start(());
253253 }
254254}
255255···337337impl<St, S: BosStr> ByteSliceBuilder<St, S>
338338where
339339 St: byte_slice_state::State,
340340- St::ByteStart: byte_slice_state::IsSet,
341340 St::ByteEnd: byte_slice_state::IsSet,
341341+ St::ByteStart: byte_slice_state::IsSet,
342342{
343343 /// Build the final struct.
344344 pub fn build(self) -> ByteSlice<S> {
···652652 }
653653 /// State trait tracking which required fields have been set
654654 pub trait State: sealed::Sealed {
655655- type Index;
656655 type Features;
656656+ type Index;
657657 }
658658 /// Empty state - all required fields are unset
659659 pub struct Empty(());
660660 impl sealed::Sealed for Empty {}
661661 impl State for Empty {
662662- type Index = Unset;
663662 type Features = Unset;
664664- }
665665- ///State transition - sets the `index` field to Set
666666- pub struct SetIndex<St: State = Empty>(PhantomData<fn() -> St>);
667667- impl<St: State> sealed::Sealed for SetIndex<St> {}
668668- impl<St: State> State for SetIndex<St> {
669669- type Index = Set<members::index>;
670670- type Features = St::Features;
663663+ type Index = Unset;
671664 }
672665 ///State transition - sets the `features` field to Set
673666 pub struct SetFeatures<St: State = Empty>(PhantomData<fn() -> St>);
674667 impl<St: State> sealed::Sealed for SetFeatures<St> {}
675668 impl<St: State> State for SetFeatures<St> {
676676- type Index = St::Index;
677669 type Features = Set<members::features>;
670670+ type Index = St::Index;
671671+ }
672672+ ///State transition - sets the `index` field to Set
673673+ pub struct SetIndex<St: State = Empty>(PhantomData<fn() -> St>);
674674+ impl<St: State> sealed::Sealed for SetIndex<St> {}
675675+ impl<St: State> State for SetIndex<St> {
676676+ type Features = St::Features;
677677+ type Index = Set<members::index>;
678678 }
679679 /// Marker types for field names
680680 #[allow(non_camel_case_types)]
681681 pub mod members {
682682- ///Marker type for the `index` field
683683- pub struct index(());
684682 ///Marker type for the `features` field
685683 pub struct features(());
684684+ ///Marker type for the `index` field
685685+ pub struct index(());
686686 }
687687}
688688···770770impl<St, S: BosStr> FacetBuilder<St, S>
771771where
772772 St: facet_state::State,
773773- St::Index: facet_state::IsSet,
774773 St::Features: facet_state::IsSet,
774774+ St::Index: facet_state::IsSet,
775775{
776776 /// Build the final struct.
777777 pub fn build(self) -> Facet<S> {
···679679 }
680680 /// State trait tracking which required fields have been set
681681 pub trait State: sealed::Sealed {
682682+ type Cts;
682683 type Src;
683683- type Uri;
684684 type Val;
685685- type Cts;
685685+ type Uri;
686686 }
687687 /// Empty state - all required fields are unset
688688 pub struct Empty(());
689689 impl sealed::Sealed for Empty {}
690690 impl State for Empty {
691691+ type Cts = Unset;
691692 type Src = Unset;
693693+ type Val = Unset;
692694 type Uri = Unset;
693693- type Val = Unset;
694694- type Cts = Unset;
695695+ }
696696+ ///State transition - sets the `cts` field to Set
697697+ pub struct SetCts<St: State = Empty>(PhantomData<fn() -> St>);
698698+ impl<St: State> sealed::Sealed for SetCts<St> {}
699699+ impl<St: State> State for SetCts<St> {
700700+ type Cts = Set<members::cts>;
701701+ type Src = St::Src;
702702+ type Val = St::Val;
703703+ type Uri = St::Uri;
695704 }
696705 ///State transition - sets the `src` field to Set
697706 pub struct SetSrc<St: State = Empty>(PhantomData<fn() -> St>);
698707 impl<St: State> sealed::Sealed for SetSrc<St> {}
699708 impl<St: State> State for SetSrc<St> {
700700- type Src = Set<members::src>;
701701- type Uri = St::Uri;
702702- type Val = St::Val;
703709 type Cts = St::Cts;
704704- }
705705- ///State transition - sets the `uri` field to Set
706706- pub struct SetUri<St: State = Empty>(PhantomData<fn() -> St>);
707707- impl<St: State> sealed::Sealed for SetUri<St> {}
708708- impl<St: State> State for SetUri<St> {
709709- type Src = St::Src;
710710- type Uri = Set<members::uri>;
710710+ type Src = Set<members::src>;
711711 type Val = St::Val;
712712- type Cts = St::Cts;
712712+ type Uri = St::Uri;
713713 }
714714 ///State transition - sets the `val` field to Set
715715 pub struct SetVal<St: State = Empty>(PhantomData<fn() -> St>);
716716 impl<St: State> sealed::Sealed for SetVal<St> {}
717717 impl<St: State> State for SetVal<St> {
718718+ type Cts = St::Cts;
718719 type Src = St::Src;
719719- type Uri = St::Uri;
720720 type Val = Set<members::val>;
721721- type Cts = St::Cts;
721721+ type Uri = St::Uri;
722722 }
723723- ///State transition - sets the `cts` field to Set
724724- pub struct SetCts<St: State = Empty>(PhantomData<fn() -> St>);
725725- impl<St: State> sealed::Sealed for SetCts<St> {}
726726- impl<St: State> State for SetCts<St> {
723723+ ///State transition - sets the `uri` field to Set
724724+ pub struct SetUri<St: State = Empty>(PhantomData<fn() -> St>);
725725+ impl<St: State> sealed::Sealed for SetUri<St> {}
726726+ impl<St: State> State for SetUri<St> {
727727+ type Cts = St::Cts;
727728 type Src = St::Src;
728728- type Uri = St::Uri;
729729 type Val = St::Val;
730730- type Cts = Set<members::cts>;
730730+ type Uri = Set<members::uri>;
731731 }
732732 /// Marker types for field names
733733 #[allow(non_camel_case_types)]
734734 pub mod members {
735735+ ///Marker type for the `cts` field
736736+ pub struct cts(());
735737 ///Marker type for the `src` field
736738 pub struct src(());
737737- ///Marker type for the `uri` field
738738- pub struct uri(());
739739 ///Marker type for the `val` field
740740 pub struct val(());
741741- ///Marker type for the `cts` field
742742- pub struct cts(());
741741+ ///Marker type for the `uri` field
742742+ pub struct uri(());
743743 }
744744}
745745···940940impl<St, S: BosStr> LabelBuilder<St, S>
941941where
942942 St: label_state::State,
943943+ St::Cts: label_state::IsSet,
943944 St::Src: label_state::IsSet,
944944- St::Uri: label_state::IsSet,
945945 St::Val: label_state::IsSet,
946946- St::Cts: label_state::IsSet,
946946+ St::Uri: label_state::IsSet,
947947{
948948 /// Build the final struct.
949949 pub fn build(self) -> Label<S> {
···13151315 }
13161316 /// State trait tracking which required fields have been set
13171317 pub trait State: sealed::Sealed {
13181318- type Locales;
13181318+ type Identifier;
13191319 type Severity;
13201320+ type Locales;
13201321 type Blurs;
13211321- type Identifier;
13221322 }
13231323 /// Empty state - all required fields are unset
13241324 pub struct Empty(());
13251325 impl sealed::Sealed for Empty {}
13261326 impl State for Empty {
13271327+ type Identifier = Unset;
13281328+ type Severity = Unset;
13271329 type Locales = Unset;
13281328- type Severity = Unset;
13291330 type Blurs = Unset;
13301330- type Identifier = Unset;
13311331 }
13321332- ///State transition - sets the `locales` field to Set
13331333- pub struct SetLocales<St: State = Empty>(PhantomData<fn() -> St>);
13341334- impl<St: State> sealed::Sealed for SetLocales<St> {}
13351335- impl<St: State> State for SetLocales<St> {
13361336- type Locales = Set<members::locales>;
13321332+ ///State transition - sets the `identifier` field to Set
13331333+ pub struct SetIdentifier<St: State = Empty>(PhantomData<fn() -> St>);
13341334+ impl<St: State> sealed::Sealed for SetIdentifier<St> {}
13351335+ impl<St: State> State for SetIdentifier<St> {
13361336+ type Identifier = Set<members::identifier>;
13371337 type Severity = St::Severity;
13381338+ type Locales = St::Locales;
13381339 type Blurs = St::Blurs;
13391339- type Identifier = St::Identifier;
13401340 }
13411341 ///State transition - sets the `severity` field to Set
13421342 pub struct SetSeverity<St: State = Empty>(PhantomData<fn() -> St>);
13431343 impl<St: State> sealed::Sealed for SetSeverity<St> {}
13441344 impl<St: State> State for SetSeverity<St> {
13451345+ type Identifier = St::Identifier;
13461346+ type Severity = Set<members::severity>;
13451347 type Locales = St::Locales;
13461346- type Severity = Set<members::severity>;
13471348 type Blurs = St::Blurs;
13491349+ }
13501350+ ///State transition - sets the `locales` field to Set
13511351+ pub struct SetLocales<St: State = Empty>(PhantomData<fn() -> St>);
13521352+ impl<St: State> sealed::Sealed for SetLocales<St> {}
13531353+ impl<St: State> State for SetLocales<St> {
13481354 type Identifier = St::Identifier;
13551355+ type Severity = St::Severity;
13561356+ type Locales = Set<members::locales>;
13571357+ type Blurs = St::Blurs;
13491358 }
13501359 ///State transition - sets the `blurs` field to Set
13511360 pub struct SetBlurs<St: State = Empty>(PhantomData<fn() -> St>);
13521361 impl<St: State> sealed::Sealed for SetBlurs<St> {}
13531362 impl<St: State> State for SetBlurs<St> {
13541354- type Locales = St::Locales;
13551355- type Severity = St::Severity;
13561356- type Blurs = Set<members::blurs>;
13571363 type Identifier = St::Identifier;
13581358- }
13591359- ///State transition - sets the `identifier` field to Set
13601360- pub struct SetIdentifier<St: State = Empty>(PhantomData<fn() -> St>);
13611361- impl<St: State> sealed::Sealed for SetIdentifier<St> {}
13621362- impl<St: State> State for SetIdentifier<St> {
13631363- type Locales = St::Locales;
13641364 type Severity = St::Severity;
13651365- type Blurs = St::Blurs;
13661366- type Identifier = Set<members::identifier>;
13651365+ type Locales = St::Locales;
13661366+ type Blurs = Set<members::blurs>;
13671367 }
13681368 /// Marker types for field names
13691369 #[allow(non_camel_case_types)]
13701370 pub mod members {
13711371+ ///Marker type for the `identifier` field
13721372+ pub struct identifier(());
13731373+ ///Marker type for the `severity` field
13741374+ pub struct severity(());
13711375 ///Marker type for the `locales` field
13721376 pub struct locales(());
13731373- ///Marker type for the `severity` field
13741374- pub struct severity(());
13751377 ///Marker type for the `blurs` field
13761378 pub struct blurs(());
13771377- ///Marker type for the `identifier` field
13781378- pub struct identifier(());
13791379 }
13801380}
13811381···15581558impl<St, S: BosStr> LabelValueDefinitionBuilder<St, S>
15591559where
15601560 St: label_value_definition_state::State,
15611561- St::Locales: label_value_definition_state::IsSet,
15611561+ St::Identifier: label_value_definition_state::IsSet,
15621562 St::Severity: label_value_definition_state::IsSet,
15631563+ St::Locales: label_value_definition_state::IsSet,
15631564 St::Blurs: label_value_definition_state::IsSet,
15641564- St::Identifier: label_value_definition_state::IsSet,
15651565{
15661566 /// Build the final struct.
15671567 pub fn build(self) -> LabelValueDefinition<S> {
···16021602 }
16031603 /// State trait tracking which required fields have been set
16041604 pub trait State: sealed::Sealed {
16051605- type Lang;
16061605 type Description;
16071606 type Name;
16071607+ type Lang;
16081608 }
16091609 /// Empty state - all required fields are unset
16101610 pub struct Empty(());
16111611 impl sealed::Sealed for Empty {}
16121612 impl State for Empty {
16131613- type Lang = Unset;
16141613 type Description = Unset;
16151614 type Name = Unset;
16161616- }
16171617- ///State transition - sets the `lang` field to Set
16181618- pub struct SetLang<St: State = Empty>(PhantomData<fn() -> St>);
16191619- impl<St: State> sealed::Sealed for SetLang<St> {}
16201620- impl<St: State> State for SetLang<St> {
16211621- type Lang = Set<members::lang>;
16221622- type Description = St::Description;
16231623- type Name = St::Name;
16151615+ type Lang = Unset;
16241616 }
16251617 ///State transition - sets the `description` field to Set
16261618 pub struct SetDescription<St: State = Empty>(PhantomData<fn() -> St>);
16271619 impl<St: State> sealed::Sealed for SetDescription<St> {}
16281620 impl<St: State> State for SetDescription<St> {
16291629- type Lang = St::Lang;
16301621 type Description = Set<members::description>;
16311622 type Name = St::Name;
16231623+ type Lang = St::Lang;
16321624 }
16331625 ///State transition - sets the `name` field to Set
16341626 pub struct SetName<St: State = Empty>(PhantomData<fn() -> St>);
16351627 impl<St: State> sealed::Sealed for SetName<St> {}
16361628 impl<St: State> State for SetName<St> {
16371637- type Lang = St::Lang;
16381629 type Description = St::Description;
16391630 type Name = Set<members::name>;
16311631+ type Lang = St::Lang;
16321632+ }
16331633+ ///State transition - sets the `lang` field to Set
16341634+ pub struct SetLang<St: State = Empty>(PhantomData<fn() -> St>);
16351635+ impl<St: State> sealed::Sealed for SetLang<St> {}
16361636+ impl<St: State> State for SetLang<St> {
16371637+ type Description = St::Description;
16381638+ type Name = St::Name;
16391639+ type Lang = Set<members::lang>;
16401640 }
16411641 /// Marker types for field names
16421642 #[allow(non_camel_case_types)]
16431643 pub mod members {
16441644- ///Marker type for the `lang` field
16451645- pub struct lang(());
16461644 ///Marker type for the `description` field
16471645 pub struct description(());
16481646 ///Marker type for the `name` field
16491647 pub struct name(());
16481648+ ///Marker type for the `lang` field
16491649+ pub struct lang(());
16501650 }
16511651}
16521652···17761776impl<St, S: BosStr> LabelValueDefinitionStringsBuilder<St, S>
17771777where
17781778 St: label_value_definition_strings_state::State,
17791779- St::Lang: label_value_definition_strings_state::IsSet,
17801779 St::Description: label_value_definition_strings_state::IsSet,
17811780 St::Name: label_value_definition_strings_state::IsSet,
17811781+ St::Lang: label_value_definition_strings_state::IsSet,
17821782{
17831783 /// Build the final struct.
17841784 pub fn build(self) -> LabelValueDefinitionStrings<S> {
···5959 }
6060 /// State trait tracking which required fields have been set
6161 pub trait State: sealed::Sealed {
6262- type Cid;
6362 type Uri;
6363+ type Cid;
6464 }
6565 /// Empty state - all required fields are unset
6666 pub struct Empty(());
6767 impl sealed::Sealed for Empty {}
6868 impl State for Empty {
6969- type Cid = Unset;
7069 type Uri = Unset;
7171- }
7272- ///State transition - sets the `cid` field to Set
7373- pub struct SetCid<St: State = Empty>(PhantomData<fn() -> St>);
7474- impl<St: State> sealed::Sealed for SetCid<St> {}
7575- impl<St: State> State for SetCid<St> {
7676- type Cid = Set<members::cid>;
7777- type Uri = St::Uri;
7070+ type Cid = Unset;
7871 }
7972 ///State transition - sets the `uri` field to Set
8073 pub struct SetUri<St: State = Empty>(PhantomData<fn() -> St>);
8174 impl<St: State> sealed::Sealed for SetUri<St> {}
8275 impl<St: State> State for SetUri<St> {
8383- type Cid = St::Cid;
8476 type Uri = Set<members::uri>;
7777+ type Cid = St::Cid;
7878+ }
7979+ ///State transition - sets the `cid` field to Set
8080+ pub struct SetCid<St: State = Empty>(PhantomData<fn() -> St>);
8181+ impl<St: State> sealed::Sealed for SetCid<St> {}
8282+ impl<St: State> State for SetCid<St> {
8383+ type Uri = St::Uri;
8484+ type Cid = Set<members::cid>;
8585 }
8686 /// Marker types for field names
8787 #[allow(non_camel_case_types)]
8888 pub mod members {
8989- ///Marker type for the `cid` field
9090- pub struct cid(());
9189 ///Marker type for the `uri` field
9290 pub struct uri(());
9191+ ///Marker type for the `cid` field
9292+ pub struct cid(());
9393 }
9494}
9595···177177impl<St, S: BosStr> StrongRefBuilder<St, S>
178178where
179179 St: strong_ref_state::State,
180180- St::Cid: strong_ref_state::IsSet,
181180 St::Uri: strong_ref_state::IsSet,
181181+ St::Cid: strong_ref_state::IsSet,
182182{
183183 /// Build the final struct.
184184 pub fn build(self) -> StrongRef<S> {
···316316 }
317317 /// State trait tracking which required fields have been set
318318 pub trait State: sealed::Sealed {
319319- type LocalFoo;
320319 type ExternalFoo;
320320+ type LocalFoo;
321321 }
322322 /// Empty state - all required fields are unset
323323 pub struct Empty(());
324324 impl sealed::Sealed for Empty {}
325325 impl State for Empty {
326326- type LocalFoo = Unset;
327326 type ExternalFoo = Unset;
328328- }
329329- ///State transition - sets the `local_foo` field to Set
330330- pub struct SetLocalFoo<St: State = Empty>(PhantomData<fn() -> St>);
331331- impl<St: State> sealed::Sealed for SetLocalFoo<St> {}
332332- impl<St: State> State for SetLocalFoo<St> {
333333- type LocalFoo = Set<members::local_foo>;
334334- type ExternalFoo = St::ExternalFoo;
327327+ type LocalFoo = Unset;
335328 }
336329 ///State transition - sets the `external_foo` field to Set
337330 pub struct SetExternalFoo<St: State = Empty>(PhantomData<fn() -> St>);
338331 impl<St: State> sealed::Sealed for SetExternalFoo<St> {}
339332 impl<St: State> State for SetExternalFoo<St> {
340340- type LocalFoo = St::LocalFoo;
341333 type ExternalFoo = Set<members::external_foo>;
334334+ type LocalFoo = St::LocalFoo;
335335+ }
336336+ ///State transition - sets the `local_foo` field to Set
337337+ pub struct SetLocalFoo<St: State = Empty>(PhantomData<fn() -> St>);
338338+ impl<St: State> sealed::Sealed for SetLocalFoo<St> {}
339339+ impl<St: State> State for SetLocalFoo<St> {
340340+ type ExternalFoo = St::ExternalFoo;
341341+ type LocalFoo = Set<members::local_foo>;
342342 }
343343 /// Marker types for field names
344344 #[allow(non_camel_case_types)]
345345 pub mod members {
346346- ///Marker type for the `local_foo` field
347347- pub struct local_foo(());
348346 ///Marker type for the `external_foo` field
349347 pub struct external_foo(());
348348+ ///Marker type for the `local_foo` field
349349+ pub struct local_foo(());
350350 }
351351}
352352···447447impl<St, S: BosStr> CollisionBuilder<St, S>
448448where
449449 St: collision_state::State,
450450- St::LocalFoo: collision_state::IsSet,
451450 St::ExternalFoo: collision_state::IsSet,
451451+ St::LocalFoo: collision_state::IsSet,
452452{
453453 /// Build the final struct.
454454 pub fn build(self) -> Collision<S> {
···8383 quote! {}
8484 };
8585 quote! {
8686- impl #type_ident<DefaultStr> {
8686+ impl #type_ident<#default_str_path> {
8787 /// Create a new builder for this type, using the default string type (DefaultStr = SmolStr) if needed
8888 pub fn new() -> #builder_name<#lifetime #state_mod_name::Empty, #default_str_path> {
8989 #builder_name::new()
+1-1
crates/jacquard/src/client.rs
···829829 "no rkey",
830830 ClientError::invalid_request("no rkey"),
831831 ))?;
832832- let request = GetRecord::new()
832832+ let request = GetRecord::builder()
833833 .repo(uri.authority().clone())
834834 .collection(collection.clone())
835835 .rkey(RecordKey(rkey.clone()))
+1-1
examples/oauth_timeline.rs
···72727373 // Wrap in Agent and fetch the timeline
7474 let agent: Agent<_> = Agent::from(session);
7575- let output = agent.send(GetTimeline::builder().limit(5).build()).await?;
7575+ let output = agent.send(GetTimeline::new().limit(5).build()).await?;
7676 let timeline = output.into_output()?;
7777 for (i, post) in timeline.feed.iter().enumerate() {
7878 println!("\n{}. by {}", i + 1, post.post.author.handle);