Package xyz.cofe.text.parse
Class CharAlternatives<T extends Token>
java.lang.Object
xyz.cofe.text.parse.CharAlternatives<T>
- All Implemented Interfaces:
java.util.function.Function<CharPointer,Token>
public class CharAlternatives<T extends Token> extends java.lang.Object implements java.util.function.Function<CharPointer,Token>
Несколько альтернативных правил
-
Constructor Summary
Constructors Constructor Description CharAlternatives(java.util.function.Function<CharPointer,Token>[] expressions)КонструкторCharAlternatives(CharAlternatives<T> sample)Конструктор копирования -
Method Summary
Modifier and Type Method Description Tapply(CharPointer tp)<R extends Token>
CharAlternatives<R>build(java.util.function.BiFunction<CharPointer,CharPointer,R> fn)Указывает функцию для построения<R extends Token>
CharAlternatives<R>build(xyz.cofe.fn.Fn3<CharPointer,CharPointer,Token,R> fn)Указывает функцию для построенияCharAlternatives<T>clone()Клонированиеxyz.cofe.fn.Fn3<CharPointer,CharPointer,Token,T>getBuilder()Функция для создания лексемыjava.util.function.Function<CharPointer,Token>[]getExpressions()Возвращает список возможных вариантов
-
Constructor Details
-
CharAlternatives
Конструктор- Parameters:
expressions- список возможных вариантов
-
CharAlternatives
Конструктор копирования- Parameters:
sample- образец для копирования
-
-
Method Details
-
getExpressions
Возвращает список возможных вариантов- Returns:
- варианты
-
clone
Клонирование- Overrides:
clonein classjava.lang.Object- Returns:
- клон
-
apply
- Specified by:
applyin interfacejava.util.function.Function<CharPointer,Token>
-
build
public <R extends Token> CharAlternatives<R> build(java.util.function.BiFunction<CharPointer,CharPointer,R> fn)Указывает функцию для построения- Type Parameters:
R- возвращаемый тип лексемы- Parameters:
fn- функция для построени- Returns:
- парсер
-
build
public <R extends Token> CharAlternatives<R> build(xyz.cofe.fn.Fn3<CharPointer,CharPointer,Token,R> fn)Указывает функцию для построения- Type Parameters:
R- возвращаемый тип лексемы- Parameters:
fn- функция для построени- Returns:
- парсер
-
getBuilder
Функция для создания лексемы- Returns:
- функция создатель лексемы
-