Jens Fischer 6 lat temu
rodzic
commit
66740ff6e8

+ 1 - 1
src/compiler/main.ml

@@ -934,7 +934,7 @@ try
 	let args_callback cl =
 		begin try
 			let path,name = Path.parse_path cl in
-			if StringHelper.starts_uppercase name then
+			if StringHelper.starts_uppercase_identifier name then
 				classes := (path,name) :: !classes
 			else begin
 				force_typing := true;

+ 1 - 1
src/context/typecore.ml

@@ -403,7 +403,7 @@ let rec can_access ctx ?(in_overload=false) c cf stat =
 				(* means it's a path of a superclass or implemented interface *)
 				not is_current_path &&
 				(* it's the last part of path in a meta && it denotes a package *)
-				l1 = [] && not (StringHelper.starts_uppercase a)
+				l1 = [] && not (StringHelper.starts_uppercase_identifier a)
 			then
 				false
 			else

+ 3 - 3
src/core/path.ml

@@ -18,7 +18,7 @@ let get_path_parts f =
 	else
 		ExtString.String.nsplit f "."
 
-let invalid_char x =
+let check_invalid_char x =
 	for i = 1 to String.length x - 1 do
 		match x.[i] with
 		| 'A'..'Z' | 'a'..'z' | '0'..'9' | '_' | '.' -> ()
@@ -30,7 +30,7 @@ let check_package_name x =
 		failwith "Package name must not be empty"
 	else if (x.[0] < 'a' || x.[0] > 'z') && x.[0] <> '_' then
 		failwith "Package name must start with a lower case character";
-	invalid_char x
+	check_invalid_char x
 
 let parse_path f =
 	let cl = get_path_parts f in
@@ -42,7 +42,7 @@ let parse_path f =
 		| [] ->
 			error "Package name must not be empty"
 		| [x] ->
-			invalid_char x;
+			check_invalid_char x;
 			[],x
 		| x :: l ->
 			check_package_name x;

+ 2 - 2
src/core/stringHelper.ml

@@ -18,13 +18,13 @@ let capitalize s =
 			Bytes.set bytes 0 (Char.chr (code - 32));
 		Bytes.to_string bytes
 
-let starts_uppercase x =
+let starts_uppercase_identifier x =
 	if String.length x = 0 then false else x.[0] = '_' || (x.[0] >= 'A' && x.[0] <= 'Z')
 
 let check_uppercase x =
 	if String.length x = 0 then
 		failwith "empty part"
-	else if not (starts_uppercase x) then
+	else if not (starts_uppercase_identifier x) then
 		failwith "Class name must start with uppercase character"
 
 let s_escape ?(hex=true) s =

+ 1 - 1
src/macro/macroApi.ml

@@ -1477,7 +1477,7 @@ let decode_type_def v =
 	) in
 	(* if our package ends with an uppercase letter, then it's the module name *)
 	let pack,name = (match List.rev pack with
-		| last :: l when StringHelper.starts_uppercase last -> List.rev l, last
+		| last :: l when StringHelper.starts_uppercase_identifier last -> List.rev l, last
 		| _ -> pack, fst name
 	) in
 	(pack, name), tdef, pos