All Downloads are FREE. Search and download functionalities are using the official Maven repository.

org.unlaxer.jaddress.parser.AddressToken Maven / Gradle / Ivy

package org.unlaxer.jaddress.parser;

import java.util.Optional;

public interface AddressToken {

	StringAndCharacterKinds stringAndCharacterKinds();

	SeparatorKind separatorKindOfLeading();

	SeparatorKind separatorKindOfTailing();

	AddressToken substring(StringIndex beginIndexInclusive, StringIndex endIndexExclusive,
			SeparatorKind leadingSeparator, SeparatorKind tailingSeparator);
	
	default AddressToken substring(StringIndex beginIndexInclusive, 
			SeparatorKind leadingSeparator, SeparatorKind tailingSeparator) {
		return substring(beginIndexInclusive, StringIndex.of(length()) , leadingSeparator, tailingSeparator);
	}

	
	AddressToken subList(ListIndex beginIndexInclusive, ListIndex endIndexExclusive,
			SeparatorKind leadingSeparator, SeparatorKind tailingSeparator);

	AddressToken strip();
	
	public static AddressToken empty() {
		return AddressTokenImpl.empty();
	}

	String asString();

	int length();

	boolean isEmpty();

	boolean isPresent();

	StringIndex indexOf(String word);
	StringIndex indexOf(String word , StringIndex fromIndex);
	
	Optional prefix();
	Optional suffix();
	
	void setPrefix(String prefix);
	void setSuffix(String suffix);

}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy