csv/csv.go
func FieldValueUnmarshaller(format Format) RecordUnmarshaller {
	return func(text string) (pilosa.Record, error) {
		parts := strings.Split(text, ",")
		if len(parts) < 2 {
			return nil, errors.New("Invalid CSV")
		}
		value, err := strconv.ParseInt(parts[1], 10, 64)
		if err != nil {
			return nil, errors.New("Invalid value")
		}
		switch format {
		case ColumnID:
			columnID, err := strconv.ParseUint(parts[0], 10, 64)
			if err != nil {
				return nil, errors.New("Invalid column ID at line: %d")
			}
			return pilosa.FieldValue{
				ColumnID: uint64(columnID),
				Value:    value,
			}, nil
		case ColumnKey:
			return pilosa.FieldValue{
				ColumnKey: parts[0],
				Value:     value,
			}, nil
		default:
			return nil, fmt.Errorf("Invalid format: %d", format)
		}
	}
}
func FieldValueUnmarshaller(format Format) RecordUnmarshaller {
	return func(text string) (pilosa.Record, error) {
		parts := strings.Split(text, ",")
		if len(parts) < 2 {
			return nil, errors.New("Invalid CSV")
		}
		value, err := strconv.ParseInt(parts[1], 10, 64)
		if err != nil {
			return nil, errors.New("Invalid value")
		}
		switch format {
		case ColumnID:
			columnID, err := strconv.ParseUint(parts[0], 10, 64)
			if err != nil {
				return nil, errors.New("Invalid column ID at line: %d")
			}
			return pilosa.FieldValue{
				ColumnID: uint64(columnID),
				Value:    value,
			}, nil
		case ColumnKey:
			return pilosa.FieldValue{
				ColumnKey: parts[0],
				Value:     value,
			}, nil
		default:
			return nil, fmt.Errorf("Invalid format: %d", format)
		}
	}
}
func FieldValueUnmarshaller ( format Format ) RecordUnmarshaller { return func ( text string ) ( pilosa . Record , error ) { parts := strings . Split ( text , " " ) if len ( parts ) < 2 { return nil , errors . New ( " " ) } value , err := strconv . ParseInt ( parts [ 1 ] , 10 , 64 ) if err != nil { return nil , errors . New ( " " ) } switch format { case ColumnID : columnID , err := strconv . ParseUint ( parts [ 0 ] , 10 , 64 ) if err != nil { return nil , errors . New ( " " ) } return pilosa . FieldValue { ColumnID : uint64 ( columnID ) , Value : value , } , nil case ColumnKey : return pilosa . FieldValue { ColumnKey : parts [ 0 ] , Value : value , } , nil default : return nil , fmt . Errorf ( " " , format ) } } }
// FieldValueUnmarshaller is a function which creates a Record from a CSV file line with value data.
FieldValueUnmarshaller is a function which creates a Record from a CSV file line with value data .