<commit_before>bcast package for Go
====================

Broadcasting on a set of channels in Go. Go channels offer different usage patterns but not ready to use broadcast pattern.
This library solves the problem in direct way. Each routine keeps member structure with own input channel and single for all
members output channel. Central dispatcher accepts broadcasts and resend them to all members.

Usage [![Go Walker](http://img.shields.io/badge/docs-API-brightgreen.svg?style=flat)](http://gowalker.org/github.com/grafov/bcast)
-----

Firstly import package and create broadcast group. You may create any number of groups for different broadcasts:

			import (
				"github.com/grafov/bcast"
			)

			group := bcast.NewGroup() // create broadcast group
			go bcast.Broadcasting(0) // accepts messages and broadcast it to all members

You may listen broadcasts limited time:

			bcast.Broadcasting(2 * time.Minute) // if message not arrived during 2 min. function exits

Now join to the group from different goroutines:

			member1 := group.Join() // joined member1 from one routine<commit_msg>Fixing Documentation example<commit_after>bcast package for Go
====================

Broadcasting on a set of channels in Go. Go channels offer different usage patterns but not ready to use broadcast pattern.
This library solves the problem in direct way. Each routine keeps member structure with own input channel and single for all
members output channel. Central dispatcher accepts broadcasts and resend them to all members.

Usage [![Go Walker](http://img.shields.io/badge/docs-API-brightgreen.svg?style=flat)](http://gowalker.org/github.com/grafov/bcast)
-----

Firstly import package and create broadcast group. You may create any number of groups for different broadcasts:

			import (
				"github.com/grafov/bcast"
			)

			group := bcast.NewGroup() // create broadcast group
			go group.Broadcasting(0) // accepts messages and broadcast it to all members

You may listen broadcasts limited time:

			bcast.Broadcasting(2 * time.Minute) // if message not arrived during 2 min. function exits

Now join to the group from different goroutines:

			member1 := group.Join() // joined member1 from one routine
{'fraction_non_alphanumeric': 0.09053870529651425, 'fraction_numerical': 0.004526935264825713, 'mean_word_length': 4.151515151515151, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6103830', 'n_tokens_mistral': 624, 'n_tokens_neox': 557, 'n_words': 257}