Legend:
Page
Library
Module
Module type
Parameter
Class
Class type
Source
Source file ast.ml
1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162(** Extensions to the Cmarkit AST *)openCmarkittypeslide={content:Block.t;title:Inline.tattributedoption}typeBlock.t+=|IncludedofBlock.tattributednode|DivofBlock.tattributednode|Slideofslideattributednode|SlipofBlock.tattributednode|SlipScriptofBlock.Code_block.tattributednodemoduleFolder=structletblock_ext_defaultfacc=function|Slide(({content=b;title=Some(title,_)},_),_)->letacc=Folder.fold_inlinefacctitleinFolder.fold_blockfaccb|Slide(({content=b;title=None},_),_)|Div((b,_),_)|Included((b,_),_)|Slip((b,_),_)->Folder.fold_blockfaccb|SlipScript_->acc|_->assertfalseletmake=Folder.make~block_ext_defaultendmoduleMapper=structlet(let*)=Option.bindlet(let+)xf=Option.mapfxletblock_ext_defaultm=function|Div((b,attrs),meta)->let*b=Mapper.map_blockmbinletattrs=(Mapper.map_attrsm(fstattrs),sndattrs)inSome(Div((b,attrs),meta))|Included((b,attrs),meta)->let*b=Mapper.map_blockmbinletattrs=(Mapper.map_attrsm(fstattrs),sndattrs)inSome(Included((b,attrs),meta))|Slide(({content=b;title},attrs),meta)->let*b=Mapper.map_blockmbinlettitle=let*title,attrs=titleinlet+inline=Mapper.map_inlinemtitlein(inline,(Mapper.map_attrsm(fstattrs),sndattrs))inletattrs=(Mapper.map_attrsm(fstattrs),sndattrs)inSome(Slide(({content=b;title},attrs),meta))|Slip((b,attrs),meta)->let*b=Mapper.map_blockmbinletattrs=(Mapper.map_attrsm(fstattrs),sndattrs)inSome(Slip((b,attrs),meta))|SlipScript((s,attrs),meta)->letattrs=(Mapper.map_attrsm(fstattrs),sndattrs)inSome(SlipScript((s,attrs),meta))|_->assertfalseletmake=Mapper.make~block_ext_defaultend