initial commits
						commit
						bc457bd371
					
				| 
						 | 
				
			
			@ -0,0 +1,19 @@
 | 
			
		|||
Copyright (c) 2023 Charles Iliya Krempeaux :: http://changelog.ca/
 | 
			
		||||
 | 
			
		||||
Permission is hereby granted, free of charge, to any person obtaining a copy
 | 
			
		||||
of this software and associated documentation files (the "Software"), to deal
 | 
			
		||||
in the Software without restriction, including without limitation the rights
 | 
			
		||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
 | 
			
		||||
copies of the Software, and to permit persons to whom the Software is
 | 
			
		||||
furnished to do so, subject to the following conditions:
 | 
			
		||||
 | 
			
		||||
The above copyright notice and this permission notice shall be included in
 | 
			
		||||
all copies or substantial portions of the Software.
 | 
			
		||||
 | 
			
		||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
 | 
			
		||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
 | 
			
		||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
 | 
			
		||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
 | 
			
		||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
 | 
			
		||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
 | 
			
		||||
THE SOFTWARE.
 | 
			
		||||
| 
						 | 
				
			
			@ -0,0 +1,66 @@
 | 
			
		|||
# go-brace
 | 
			
		||||
 | 
			
		||||
Package **brace** implements tools for working with brace-string literals, for the Go programming language.
 | 
			
		||||
 | 
			
		||||
Brace-String literals are a type of string literal used in the Tcl programming language.
 | 
			
		||||
For example:
 | 
			
		||||
```
 | 
			
		||||
{Hello world!}
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Documention
 | 
			
		||||
 | 
			
		||||
Online documentation, which includes examples, can be found at: http://godoc.org/sourcecode.social/reiver/go-brace
 | 
			
		||||
 | 
			
		||||
[](https://godoc.org/sourcecode.social/reiver/go-brace)
 | 
			
		||||
 | 
			
		||||
## Example
 | 
			
		||||
 | 
			
		||||
Here is an example:
 | 
			
		||||
```golang
 | 
			
		||||
 | 
			
		||||
import "sourcecode.social/reiver/go-brace"
 | 
			
		||||
import "sourcecode.social/reiver/go-utf-8"
 | 
			
		||||
 | 
			
		||||
// ...
 | 
			
		||||
 | 
			
		||||
const value string = `{This is a brace-string literal. It begins with a \{ symbol and end with a \} symbol. Now look at this: {wow} }`
 | 
			
		||||
 | 
			
		||||
var reader io.Reader = strings.NewReader(value)
 | 
			
		||||
var runereader io.RuneReader = utf8.NewRuneReader(reader)
 | 
			
		||||
 | 
			
		||||
bracestring, err := brace.ParseToString(runereader)
 | 
			
		||||
if nil != err {
 | 
			
		||||
		return err
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
fmt.Print(bracestring)
 | 
			
		||||
 | 
			
		||||
// This will print:
 | 
			
		||||
//
 | 
			
		||||
//	This is a brace-string literal. It begins with a { symbol and end with a } symbol. Now look at this: {wow} 
 | 
			
		||||
//
 | 
			
		||||
// I.e., the string:
 | 
			
		||||
//
 | 
			
		||||
//	"This is a brace-string literal. It begins with a { symbol and end with a } symbol. Now look at this: {wow} "
 | 
			
		||||
//
 | 
			
		||||
// Notice that the beginning '{' is not there, that the ending '}' is not there, and the 2 '\' are not there either.
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Import
 | 
			
		||||
 | 
			
		||||
To import package **brace** use `import` code like the follownig:
 | 
			
		||||
```
 | 
			
		||||
import "sourcecode.social/reiver/go-brace"
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Installation
 | 
			
		||||
 | 
			
		||||
To install package **brace** do the following:
 | 
			
		||||
```
 | 
			
		||||
GOPROXY=direct go get https://sourcecode.social/reiver/go-brace
 | 
			
		||||
```
 | 
			
		||||
 | 
			
		||||
## Author
 | 
			
		||||
 | 
			
		||||
Package **brace** was written by [Charles Iliya Krempeaux](http://changelog.ca)
 | 
			
		||||
		Loading…
	
		Reference in New Issue