Aleksandr Kuzmenko 6 年之前
父节点
当前提交
bbac232e80
共有 1 个文件被更改,包括 3 次插入12 次删除
  1. 3 12
      src/syntax/semver.ml

+ 3 - 12
src/syntax/semver.ml

@@ -21,19 +21,16 @@
 	A single version within semver string (e.g major or minor or patch)
 	A single version within semver string (e.g major or minor or patch)
 *)
 *)
 type version =
 type version =
-	| SVNone			(* Not specified by user. E.g. no patch in `version("4.0")` *)
 	| SVNum of int
 	| SVNum of int
 	| SVStr of string	(* `alpha`, `pre`, `rc` etc. *)
 	| SVStr of string	(* `alpha`, `pre`, `rc` etc. *)
 
 
 let s_version = function
 let s_version = function
-	| SVNone -> "SVNone"
 	| SVNum n -> "SVNum " ^ (string_of_int n)
 	| SVNum n -> "SVNum " ^ (string_of_int n)
 	| SVStr s -> "SVStr " ^ s
 	| SVStr s -> "SVStr " ^ s
 
 
 let to_string ((major,minor,patch),pre) =
 let to_string ((major,minor,patch),pre) =
 	let str v =
 	let str v =
 		match v with
 		match v with
-			| SVNone -> "?"
 			| SVNum n -> string_of_int n
 			| SVNum n -> string_of_int n
 			| SVStr s -> s
 			| SVStr s -> s
 	in
 	in
@@ -54,16 +51,15 @@ let parse_version s =
 				try SVNum (int_of_string s)
 				try SVNum (int_of_string s)
 				with _ -> SVStr s
 				with _ -> SVStr s
 			)
 			)
-			(String.split_on_char '.' dotted_str)
+			(ExtString.String.nsplit dotted_str ".")
 	in
 	in
 	let parse_release dotted_str =
 	let parse_release dotted_str =
 		match parse dotted_str with
 		match parse dotted_str with
 			| [SVNum _ as major; SVNum _ as minor; SVNum _ as patch] -> (major, minor, patch)
 			| [SVNum _ as major; SVNum _ as minor; SVNum _ as patch] -> (major, minor, patch)
-			| [SVNum _ as major; SVNum _ as minor] -> (major, minor, SVNone)
-			| [SVNum _ as major] -> (major, SVNone, SVNone)
+			| [SVNum _ as major; SVNum _ as minor] -> (major, minor, SVNum 0)
+			| [SVNum _ as major] -> (major, SVNum 0, SVNum 0)
 			| _ -> error()
 			| _ -> error()
 	in
 	in
-	let result =
 	match String.index_opt s '-' with
 	match String.index_opt s '-' with
 		(* 1.2.3 *)
 		(* 1.2.3 *)
 		| None -> (parse_release s), None
 		| None -> (parse_release s), None
@@ -82,9 +78,6 @@ let parse_version s =
 				parse pre_str
 				parse pre_str
 			in
 			in
 			release, Some pre
 			release, Some pre
-		in
-		print_endline (to_string result);
-		result
 
 
 (**
 (**
 	@see https://semver.org/#spec-item-11
 	@see https://semver.org/#spec-item-11
@@ -92,8 +85,6 @@ let parse_version s =
 let compare_version a b =
 let compare_version a b =
 	let compare_v v1 v2 =
 	let compare_v v1 v2 =
 		match v1,v2 with
 		match v1,v2 with
-			| SVNone, _ -> 0
-			| _, SVNone -> 0
 			| SVNum n1, SVNum n2 -> compare n1 n2
 			| SVNum n1, SVNum n2 -> compare n1 n2
 			| SVStr s1, SVStr s2 -> compare s1 s2
 			| SVStr s1, SVStr s2 -> compare s1 s2
 			| SVStr _, SVNum _ -> 1
 			| SVStr _, SVNum _ -> 1