1// Package ini is an LL(1) parser for configuration files.
2//
3//	Example:
4//	sections, err := ini.OpenFile("/path/to/file")
5//	if err != nil {
6//		panic(err)
7//	}
8//
9//	profile := "foo"
10//	section, ok := sections.GetSection(profile)
11//	if !ok {
12//		fmt.Printf("section %q could not be found", profile)
13//	}
14//
15// Below is the BNF that describes this parser
16//	Grammar:
17//	stmt -> value stmt'
18//	stmt' -> epsilon | op stmt
19//	value -> number | string | boolean | quoted_string
20//
21//	section -> [ section'
22//	section' -> value section_close
23//	section_close -> ]
24//
25//	SkipState will skip (NL WS)+
26//
27//	comment -> # comment' | ; comment'
28//	comment' -> epsilon | value
29package ini
30