mirror of
				https://github.com/rust-lang/rust.git
				synced 2025-10-31 13:04:42 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			50 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
			
		
		
	
	
			50 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			Rust
		
	
	
	
	
	
| #![allow(dead_code)]
 | |
| 
 | |
| #![forbid(non_camel_case_types)]
 | |
| 
 | |
| // Some scripts (e.g., hiragana) don't have a concept of
 | |
| // upper/lowercase
 | |
| 
 | |
| // 1. non_camel_case_types
 | |
| 
 | |
| // Can start with non-lowercase letter
 | |
| struct Θχ;
 | |
| struct ヒa;
 | |
| 
 | |
| struct χa;
 | |
| //~^ ERROR type `χa` should have an upper camel case name
 | |
| 
 | |
| // If there's already leading or trailing underscores, they get trimmed before checking.
 | |
| // This is fine:
 | |
| struct _ヒb;
 | |
| 
 | |
| // This is not:
 | |
| struct __χa;
 | |
| //~^ ERROR type `__χa` should have an upper camel case name
 | |
| 
 | |
| // Besides this, we cannot have two continuous underscores in the middle.
 | |
| 
 | |
| struct 对__否;
 | |
| //~^ ERROR type `对__否` should have an upper camel case name
 | |
| 
 | |
| struct ヒ__χ;
 | |
| //~^ ERROR type `ヒ__χ` should have an upper camel case name
 | |
| 
 | |
| // also cannot have lowercase letter next to an underscore.
 | |
| // so this triggers the lint:
 | |
| 
 | |
| struct Hello_你好;
 | |
| //~^ ERROR type `Hello_你好` should have an upper camel case name
 | |
| 
 | |
| struct Hello_World;
 | |
| //~^ ERROR type `Hello_World` should have an upper camel case name
 | |
| 
 | |
| struct 你_ӟ;
 | |
| //~^ ERROR type `你_ӟ` should have an upper camel case name
 | |
| 
 | |
| // and this is ok:
 | |
| 
 | |
| struct 你_好;
 | |
| 
 | |
| fn main() {}
 | 
