11//! The `comrak` binary.
22
33use comrak:: {
4- adapters:: SyntaxHighlighterAdapter , plugins:: syntect:: SyntectAdapter , Arena ,
5- ExtensionOptionsBuilder , ListStyleType , Options , ParseOptionsBuilder , Plugins ,
6- RenderOptionsBuilder ,
4+ adapters:: SyntaxHighlighterAdapter , plugins:: syntect:: SyntectAdapter , Arena , ListStyleType ,
5+ Options , Plugins ,
76} ;
87use std:: boxed:: Box ;
98use std:: env;
@@ -14,6 +13,7 @@ use std::path::PathBuf;
1413use std:: process;
1514
1615use clap:: { Parser , ValueEnum } ;
16+ use comrak:: { ExtensionOptions , ParseOptions , RenderOptions } ;
1717
1818const EXIT_SUCCESS : i32 = 0 ;
1919const EXIT_PARSE_CONFIG : i32 = 2 ;
@@ -251,15 +251,14 @@ fn main() -> Result<(), Box<dyn Error>> {
251251
252252 let exts = & cli. extensions ;
253253
254- let mut extension = ExtensionOptionsBuilder :: default ( ) ;
255- extension
254+ let extension = ExtensionOptions :: builder ( )
256255 . strikethrough ( exts. contains ( & Extension :: Strikethrough ) || cli. gfm )
257256 . tagfilter ( exts. contains ( & Extension :: Tagfilter ) || cli. gfm )
258257 . table ( exts. contains ( & Extension :: Table ) || cli. gfm )
259258 . autolink ( exts. contains ( & Extension :: Autolink ) || cli. gfm )
260259 . tasklist ( exts. contains ( & Extension :: Tasklist ) || cli. gfm )
261260 . superscript ( exts. contains ( & Extension :: Superscript ) )
262- . header_ids ( cli. header_ids )
261+ . maybe_header_ids ( cli. header_ids )
263262 . footnotes ( exts. contains ( & Extension :: Footnotes ) )
264263 . description_lists ( exts. contains ( & Extension :: DescriptionLists ) )
265264 . multiline_block_quotes ( exts. contains ( & Extension :: MultilineBlockQuotes ) )
@@ -270,23 +269,21 @@ fn main() -> Result<(), Box<dyn Error>> {
270269 . underline ( exts. contains ( & Extension :: Underline ) )
271270 . spoiler ( exts. contains ( & Extension :: Spoiler ) )
272271 . greentext ( exts. contains ( & Extension :: Greentext ) )
273- . front_matter_delimiter ( cli. front_matter_delimiter ) ;
272+ . maybe_front_matter_delimiter ( cli. front_matter_delimiter ) ;
274273
275274 #[ cfg( feature = "shortcodes" ) ]
276- {
277- extension. shortcodes ( cli. gemojis ) ;
278- }
275+ let extension = extension. shortcodes ( cli. gemojis ) ;
279276
280- let extension = extension. build ( ) ? ;
277+ let extension = extension. build ( ) ;
281278
282- let parse = ParseOptionsBuilder :: default ( )
279+ let parse = ParseOptions :: builder ( )
283280 . smart ( cli. smart )
284- . default_info_string ( cli. default_info_string )
281+ . maybe_default_info_string ( cli. default_info_string )
285282 . relaxed_tasklist_matching ( cli. relaxed_tasklist_character )
286283 . relaxed_autolinks ( cli. relaxed_autolinks )
287- . build ( ) ? ;
284+ . build ( ) ;
288285
289- let render = RenderOptionsBuilder :: default ( )
286+ let render = RenderOptions :: builder ( )
290287 . hardbreaks ( cli. hardbreaks )
291288 . github_pre_lang ( cli. github_pre_lang || cli. gfm )
292289 . full_info_string ( cli. full_info_string )
@@ -301,7 +298,7 @@ fn main() -> Result<(), Box<dyn Error>> {
301298 . ignore_empty_links ( cli. ignore_empty_links )
302299 . gfm_quirks ( cli. gfm_quirks || cli. gfm )
303300 . tasklist_classes ( cli. tasklist_classes )
304- . build ( ) ? ;
301+ . build ( ) ;
305302
306303 let options = Options {
307304 extension,
0 commit comments