(*
Copyright 2010 Gerd Stolpmann
This file is part of Plasma, a distributed filesystem and a
map/reduce computation framework. Unless you have a written license
agreement with the copyright holder (Gerd Stolpmann), the following
terms apply:
Plasma is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.
Plasma 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 General Public License for more details.
You should have received a copy of the GNU General Public License
along with Foobar. If not, see <http://www.gnu.org/licenses/>.
*)
(* $Id: mapred_split.mli 279 2010-10-27 01:30:08Z gerd $ *)
val tab_split : string -> (string * string)
(** Splits a line into key and value. The separator is the first TAB
character.
*)
val tab_split_key : string -> string
(** Same as [fst (tab_split_key s)] *)
val tab2_split : string -> (string * int * string)
(** Splits a line into (key, partition, value). Separators are the first
and second TAB characters
*)
val tab2_split_key : string -> string
(** Same as [let (key,_,_) = tab2_split s in key] *)
val tab2_split_key_partition : string -> string * int
(** Same as [let (key,p,_) = tab2_split s in (key,p)] *)
val tab2_split_key_partition_s : string -> string
(** Same as [let (key,p,_) = tab2_split s in key ^ "\t" ^ string_of_int p] *)
val tab2_split_partition : string -> int
(** Same as [let (_,p,_) = tab2_split s in p] *)