12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182(*******************************************************************************)(* Volgo - a Versatile OCaml Library for Git Operations *)(* Copyright (C) 2024-2025 Mathieu Barbin <mathieu.barbin@gmail.com> *)(* *)(* This file is part of Volgo. *)(* *)(* Volgo is free software; you can redistribute it and/or modify it under *)(* the terms of the GNU Lesser General Public License as published by the *)(* Free Software Foundation either version 3 of the License, or any later *)(* version, with the LGPL-3.0 Linking Exception. *)(* *)(* Volgo is distributed in the hope that it will be useful, but WITHOUT ANY *)(* WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS *)(* FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License and *)(* the file `NOTICE.md` at the root of this repository for more details. *)(* *)(* You should have received a copy of the GNU Lesser General Public License *)(* and the LGPL-3.0 Linking Exception along with this library. If not, see *)(* <http://www.gnu.org/licenses/> and <https://spdx.org>, respectively. *)(*******************************************************************************)moduleAuthor=AuthormoduleBranch_name=Branch_namemoduleCommit_message=Commit_messagemoduleFile_contents=File_contentsmoduleGit=GitmoduleGraph=GraphmoduleHg=HgmoduleLog=LogmoduleMock_rev_gen=Mock_rev_genmoduleMock_revs=Mock_revsmoduleName_status=Name_statusmoduleNon_raising=Non_raisingmoduleNum_status=Num_statusmoduleNum_lines_in_diff=Num_lines_in_diffmodulePath_in_repo=Path_in_repomodulePlatform=PlatformmodulePlatform_repo=Platform_repomoduleRef_kind=Ref_kindmoduleRefs=RefsmoduleRemote_branch_name=Remote_branch_namemoduleRemote_name=Remote_namemoduleRepo_name=Repo_namemoduleRepo_root=Repo_rootmoduleResult=Vcs_resultmoduleRresult=Vcs_rresultmoduleRev=RevmoduleTag_name=Tag_namemoduleTrait=TraitmoduleUser_email=User_emailmoduleUser_handle=User_handlemoduleUser_name=User_nameincludeVcs0modulePrivate=structmoduleInt_table=Int_tablemoduleProcess_output=Process_outputmoduleRef_kind_table=Ref_kind_tablemoduleRev_table=Rev_tablemoduleValidated_string=Validated_stringlettry_withf=matchf()with|ok->Okok|exceptionexn->Error(Err.of_exnexn);;endmoduleFile_shown_at_rev=structtypet=[`PresentofFile_contents.t|`Absent]letto_dyn:t->Dyn.t=function|`Absent->Dyn.Variant("Absent",[])|`Presentfile_contents->Dyn.Variant("Present",[File_contents.to_dynfile_contents]);;letsexp_of_tt=Dyn.to_sexp(to_dynt)end