package ocamlrss

  1. Overview
  2. Docs
Legend:
Library
Module
Module type
Parameter
Class
Class type
type date = Netdate.t
val string_of_date : ?fmt:string -> date -> string
type email = string
type pics_rating = string
type skip_hours = int list
type skip_days = int list
type url = Neturl.url
type category = {
  1. cat_name : string;
  2. cat_domain : url option;
}
type image = {
  1. image_url : url;
  2. image_title : string;
  3. image_height : int option;
  4. image_width : int option;
  5. image_desc : string option;
}
type text_input = {
  1. ti_title : string;
  2. ti_desc : string;
  3. ti_name : string;
}
type enclosure = {
  1. encl_url : url;
  2. encl_length : int;
  3. encl_type : string;
}
type guid =
  1. | Guid_name of string
type source = {
  1. src_name : string;
  2. src_url : url;
}
type cloud = {
  1. cloud_domain : string;
  2. cloud_port : int;
  3. cloud_path : string;
  4. cloud_register_procedure : string;
  5. cloud_protocol : string;
}
type !'a item_t = {
  1. item_title : string option;
  2. item_desc : string option;
  3. item_pubdate : date option;
  4. item_author : email option;
  5. item_categories : category list;
  6. item_comments : url option;
  7. item_enclosure : enclosure option;
  8. item_guid : guid option;
  9. item_source : source option;
  10. item_data : 'a option;
}
type namespace = string * string
type (!'a, !'b) channel_t = {
  1. ch_title : string;
  2. ch_desc : string;
  3. ch_language : string option;
  4. ch_managing_editor : email option;
  5. ch_webmaster : email option;
  6. ch_pubdate : date option;
  7. ch_last_build_date : date option;
  8. ch_categories : category list;
  9. ch_generator : string option;
  10. ch_cloud : cloud option;
  11. ch_docs : url option;
  12. ch_ttl : int option;
  13. ch_image : image option;
  14. ch_rating : pics_rating option;
  15. ch_text_input : text_input option;
  16. ch_skip_hours : skip_hours option;
  17. ch_skip_days : skip_days option;
  18. ch_items : 'b item_t list;
  19. ch_data : 'a option;
  20. ch_namespaces : namespace list;
}
type item = unit item_t
type channel = (unit, unit) channel_t
val item : ?title:string -> ?link:url -> ?desc:string -> ?pubdate:date -> ?author:email -> ?cats:category list -> ?comments:url -> ?encl:enclosure -> ?guid:guid -> ?source:source -> ?data:'a -> unit -> 'a item_t
val channel : title:string -> link:url -> desc:string -> ?language:string -> ?copyright:string -> ?managing_editor:email -> ?webmaster:email -> ?pubdate:date -> ?last_build_date:date -> ?cats:category list -> ?generator:string -> ?cloud:cloud -> ?docs:url -> ?ttl:int -> ?image:image -> ?rating:pics_rating -> ?text_input:text_input -> ?skip_hours:skip_hours -> ?skip_days:skip_days -> ?data:'a -> ?namespaces:namespace list -> 'b item_t list -> ('a, 'b) channel_t
val compare_item : ?comp_data:('a -> 'a -> int) -> 'a item_t -> 'a item_t -> int
val copy_item : 'a item_t -> 'a item_t
val copy_channel : ('a, 'b) channel_t -> ('a, 'b) channel_t
val keep_n_items : int -> ('a, 'b) channel_t -> ('a, 'b) channel_t
val sort_items_by_date : 'a item_t list -> 'a item_t list
val merge_channels : ('a, 'b) channel_t -> ('a, 'b) channel_t -> ('a, 'b) channel_t
type xmltree =
  1. | E of Xmlm.tag * xmltree list
  2. | D of string
val xml_of_source : Xmlm.source -> xmltree
exception Error of string
type ('a, 'b) opts
val make_opts : ?schemes:(string, Neturl.url_syntax) Hashtbl.t -> ?base_syntax:Neturl.url_syntax -> ?read_channel_data:(xmltree list -> 'a option) -> ?read_item_data:(xmltree list -> 'b option) -> unit -> ('a, 'b) opts
val default_opts : (unit, unit) opts
val channel_t_of_file : ('a, 'b) opts -> string -> ('a, 'b) channel_t * string list
val channel_t_of_string : ('a, 'b) opts -> string -> ('a, 'b) channel_t * string list
val channel_t_of_channel : ('a, 'b) opts -> in_channel -> ('a, 'b) channel_t * string list
val channel_t_of_xmls : ('a, 'b) opts -> xmltree list -> ('a, 'b) channel_t * string list
val channel_of_file : string -> channel * string list
val channel_of_string : string -> channel * string list
val channel_of_channel : in_channel -> channel * string list
type !'a data_printer = 'a -> xmltree list
val print_channel : ?channel_data_printer:'a data_printer -> ?item_data_printer:'b data_printer -> ?indent:int -> ?date_fmt:string -> ?encoding:string -> Format.formatter -> ('a, 'b) channel_t -> unit
val print_file : ?channel_data_printer:'a data_printer -> ?item_data_printer:'b data_printer -> ?indent:int -> ?date_fmt:string -> ?encoding:string -> string -> ('a, 'b) channel_t -> unit