예제 #1
0
파일: input_io.go 프로젝트: danieldk/dparnn
func ReadInputLayerAddrs(reader io.Reader) (InputLayerAddrs, error) {
	scanner := bufio.NewScanner(reader)
	scanner.Split(bufio.ScanLines)

	ilas := make(InputLayerAddrs, 0)

	for scanner.Scan() {
		data := scanner.Bytes()

		if len(bytes.TrimSpace(data)) == 0 {
			continue
		}

		addrs, err := addr.ParseAddressedValueTemplates(data)
		if err != nil {
			return nil, err
		}

		if len(addrs) > 1 {
			return nil, fmt.Errorf("dparnn does not support/need feature products: %s", data)
		}

		ilas = append(ilas, addrs[0])
	}

	sort.Stable(ilas)

	return ilas, nil
}
예제 #2
0
파일: symbolic.go 프로젝트: postfix/dpar
func parseAddressedValueGenerator(data []byte) (FeatureGenerator, error) {
	templates, err := addr.ParseAddressedValueTemplates(data)
	if err != nil {
		return nil, err
	}

	return NewAddressedValueGenerator(templates), nil
}