package drom_lib

  1. Overview
  2. Docs
type kind =
  1. | Program
  2. | Library
  3. | Virtual
type version =
  1. | Lt of string
  2. | Le of string
  3. | Eq of string
  4. | Ge of string
  5. | Gt of string
  6. | Version
  7. | Semantic of int * int * int
  8. | NoVersion
type dependency = {
  1. depversions : version list;
  2. depname : string option;
  3. deptest : bool;
  4. depdoc : bool;
}
type package = {
  1. name : string;
  2. mutable dir : string;
  3. mutable project : project;
  4. mutable kind : kind;
  5. mutable p_skeleton : string option;
  6. mutable p_pack : string option;
  7. mutable p_version : string option;
  8. mutable p_authors : string list option;
  9. mutable p_synopsis : string option;
  10. mutable p_description : string option;
  11. mutable p_dependencies : (string * dependency) list;
  12. mutable p_tools : (string * dependency) list;
  13. mutable p_pack_modules : bool option;
  14. mutable p_gen_version : string option;
  15. mutable p_fields : string EzCompat.StringMap.t;
  16. mutable p_generators : EzCompat.StringSet.t option;
  17. mutable p_file : string option;
}
and project = {
  1. package : package;
  2. mutable packages : package list;
  3. mutable file : string option;
  4. mutable generators : EzCompat.StringSet.t;
  5. mutable skeleton : string option;
  6. edition : string;
  7. min_edition : string;
  8. github_organization : string option;
  9. homepage : string option;
  10. license : string;
  11. copyright : string option;
  12. bug_reports : string option;
  13. dev_repo : string option;
  14. doc_gen : string option;
  15. doc_api : string option;
  16. skip : string list;
  17. archive : string option;
  18. sphinx_target : string option;
  19. odoc_target : string option;
  20. ci_systems : string list;
  21. skip_dirs : string list;
  22. profiles : profile EzCompat.StringMap.t;
  23. profile : string option;
  24. version : string;
  25. authors : string list;
  26. synopsis : string;
  27. description : string;
  28. share_dirs : string list;
  29. mutable dependencies : (string * dependency) list;
  30. mutable tools : (string * dependency) list;
  31. mutable fields : string EzCompat.StringMap.t;
  32. year : int;
}
and profile = {
  1. flags : string EzCompat.StringMap.t;
}
type config = {
  1. config_author : string option;
  2. config_share_dir : string option;
  3. config_github_organization : string option;
  4. config_license : string option;
  5. config_opam_repo : string option;
  6. config_dev_tools : string list;
}
type opam_kind =
  1. | Single
  2. | LibraryPart
  3. | ProgramPart
  4. | Deps
type switch_arg =
  1. | Local
  2. | Global of string
type flags = {
  1. mutable flag_file : string;
  2. mutable flag_create : bool;
  3. mutable flag_record : bool;
  4. mutable flag_skips : string list;
  5. mutable flag_skip : bool;
  6. mutable flag_subst : bool;
  7. mutable flag_perm : int;
  8. flag_skipper : bool list ref;
}
type skeleton = {
  1. skeleton_inherits : string option;
  2. skeleton_toml : string list;
  3. skeleton_files : (string * string * int) list;
  4. skeleton_flags : flags EzCompat.StringMap.t;
  5. skeleton_drom : bool;
  6. skeleton_name : string;
}
type license = {
  1. license_key : string;
  2. license_name : string;
  3. license_header : string list;
  4. license_contents : string;
}
type deps_status =
  1. | Deps_build
  2. | Deps_devel
  3. | Deps_locked