mirror of
				https://github.com/KevinMidboe/linguist.git
				synced 2025-10-29 17:50:22 +00:00 
			
		
		
		
	Extended Backus–Naur form ([EBNF][]) is a metalanguage used to specify language grammars. [EBNF]: https://en.wikipedia.org/wiki/Extended_Backus–Naur_form
		
			
				
	
	
		
			62 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			EBNF
		
	
	
	
	
	
			
		
		
	
	
			62 lines
		
	
	
		
			1.1 KiB
		
	
	
	
		
			EBNF
		
	
	
	
	
	
(*
 | 
						|
  Source:  https://github.com/io7m/jsom0
 | 
						|
  License: ISC
 | 
						|
*)
 | 
						|
 | 
						|
vertex_p3n3_name =
 | 
						|
  "vertex_p3n3" ;
 | 
						|
 | 
						|
vertex_p3n3t2_name =
 | 
						|
  "vertex_p3n3t2" ;
 | 
						|
 | 
						|
vertex_type =
 | 
						|
  vertex_p3n3_name | vertex_p3n3t2_name ;
 | 
						|
 | 
						|
vertex_position =
 | 
						|
  "position" , real , real , real , ";" ;
 | 
						|
 | 
						|
vertex_normal =
 | 
						|
  "normal" , real , real , real , ";" ;
 | 
						|
 | 
						|
vertex_uv =
 | 
						|
  "uv" , real , real , ";" ;
 | 
						|
 | 
						|
vertex_p3n3 =
 | 
						|
  vertex_p3n3_name , vertex_position , vertex_normal , "end" , ";" ;
 | 
						|
 | 
						|
vertex_p3n3t2 =
 | 
						|
  vertex_p3n3t2_name , vertex_position , vertex_normal , vertex_uv , "end" , ";" ;
 | 
						|
 | 
						|
vertex =
 | 
						|
  vertex_p3n3 | vertex_p3n3t2 ;
 | 
						|
 | 
						|
vertex_array =
 | 
						|
  "array" , positive , vertex_type , { vertex } , "end" , ";" ;
 | 
						|
 | 
						|
vertices =
 | 
						|
  "vertices" , ";" , vertex_array , "end" , ";" ;
 | 
						|
 | 
						|
triangle =
 | 
						|
  "triangle" , natural , natural , natural , ";" ;
 | 
						|
 | 
						|
triangle_array =
 | 
						|
  "array" , positive, "triangle" , { triangle } , "end" , ";" ;
 | 
						|
 | 
						|
triangles =
 | 
						|
  "triangles" , ";" , triangle_array , "end" , ";" ;
 | 
						|
 | 
						|
name =
 | 
						|
  "name" , string , ";" ;
 | 
						|
 | 
						|
material_name =
 | 
						|
  "material_name" , string , ";" ;
 | 
						|
 | 
						|
object =
 | 
						|
  "object" , ";" ,
 | 
						|
    name ,
 | 
						|
    material_name ,
 | 
						|
    vertices ,
 | 
						|
    triangles ,
 | 
						|
  "end" , ";" ;
 | 
						|
 |