package ini

import (
	"fmt"
)

var (
	equalOp      = []rune("=")
	equalColonOp = []rune(":")
)

func isOp(b []rune) bool {
	if len(b) == 0 {
		return false
	}

	switch b[0] {
	case '=':
		return true
	case ':':
		return true
	default:
		return false
	}
}

func newOpToken(b []rune) (Token, int, error) {
	tok := Token{}

	switch b[0] {
	case '=':
		tok = newToken(TokenOp, equalOp, NoneType)
	case ':':
		tok = newToken(TokenOp, equalColonOp, NoneType)
	default:
		return tok, 0, NewParseError(fmt.Sprintf("unexpected op type, %v", b[0]))
	}
	return tok, 1, nil
}