Package xyz.cofe.cxel.eval
Class Call
java.lang.Object
xyz.cofe.cxel.eval.Call
- All Implemented Interfaces:
PreparedCall,ArgsCasing,CastLooseDataArgs,CovariantArgs,ImplicitArgs,InvariantArgs,ParameterCount,PrimitiveCastArgs
public class Call extends java.lang.Object implements PreparedCall, ArgsCasing, InvariantArgs, PrimitiveCastArgs, CastLooseDataArgs, CovariantArgs, ImplicitArgs, ParameterCount
Вариант вызова метода/функции
-
Field Summary
-
Constructor Summary
-
Method Summary
Modifier and Type Method Description CalladdArg(ArgPass arg)Добавляет аргументintargsCasing()Возвращает различие между кол-вом входных параметров и передаваемых параметровbooleancacheable()Возвращает факт возможности повторного вызова с новыми аргментами без перестройки новогоCalljava.lang.Objectcall(java.util.List<java.lang.Object> inputArgs)Вызов функии с заданными аргументамиbooleancallable()Возвращает признак что можно сделать вызов функцииcall(List)intcastLooseDataArgs()Возвращает кол-во аргументов которые передаются с преобразованием примитивных типов данных и потерей точности данных при преобразованииCallclone()КлонированиеCallconfigure(java.util.function.Consumer<Call> conf)Конфигурирование экземпляраintcovariantArgs()Возвращает кол-во аргументов которые передаются с ковариантным преобразованием типов данныхCallfn(TypedFn newfn)Указывает вызываемую функциюArgPassgetArg(int argIndex)Возвращает аргумент по индексуintgetArgsCount()Возвращает кол-во аргументовTypedFngetFn()Возвращает вызываемую функциюjava.util.List<java.lang.Object>getInputArgs()Возвращает входящие аргументыintimplicitArgs()Возвращает кол-во аргументов которые передаются с неявным преобразованием типов данныхintinvariantArgs()Возвращает кол-во аргументов которые передаются без изменения типов данныхintparameterCount()Возвращает кол-во передаваемых типов данныхintprimitiveCastArgs()Возвращает кол-во аргументов которые передаются с преобразованием примитивных типов данныхCallremoveArg(int idx)Удаляет аргументCallsetArg(int idx, ArgPass arg)Указывает значение аргументаvoidsetInputArgs(java.util.List<java.lang.Object> inputArgs)Указывает входящие аргументыjava.lang.StringtoString()
-
Field Details
-
Constructor Details
-
Method Details
-
configure
Конфигурирование экземпляра- Parameters:
conf- конфигурация- Returns:
- self ссылка
-
clone
Клонирование- Overrides:
clonein classjava.lang.Object- Returns:
- клон
-
getInputArgs
public java.util.List<java.lang.Object> getInputArgs()Возвращает входящие аргументы- Returns:
- входящие аргументы
-
setInputArgs
public void setInputArgs(java.util.List<java.lang.Object> inputArgs)Указывает входящие аргументы- Parameters:
inputArgs- входящие аргументы
-
getFn
Возвращает вызываемую функцию- Returns:
- вызываемая функция
-
fn
Указывает вызываемую функцию- Parameters:
newfn- вызываемая функция
-
getArgsCount
public int getArgsCount()Возвращает кол-во аргументов- Returns:
- кол-во аргументов
-
getArg
Возвращает аргумент по индексу- Parameters:
argIndex- индекс аргумента- Returns:
- аргумент
-
addArg
Добавляет аргумент- Parameters:
arg- аргумент- Returns:
- self ссылка
-
removeArg
Удаляет аргумент- Parameters:
idx- индекс аргумента- Returns:
- self ссылка
-
setArg
Указывает значение аргумента- Parameters:
idx- индекс аргументаarg- ардгумент- Returns:
- self ссылка
-
callable
public boolean callable()Возвращает признак что можно сделать вызов функцииcall(List)- Returns:
- true - допускается при заданных аргументах вызвать
call(List), false - не допускается
-
call
public java.lang.Object call(java.util.List<java.lang.Object> inputArgs)Вызов функии с заданными аргументами- Specified by:
callin interfacePreparedCall- Returns:
- результат вызова
-
cacheable
public boolean cacheable()Возвращает факт возможности повторного вызова с новыми аргментами без перестройки новогоCall- Specified by:
cacheablein interfacePreparedCall- Returns:
- true - можно повторно вызывать
-
argsCasing
public int argsCasing()Description copied from interface:ArgsCasingВозвращает различие между кол-вом входных параметров и передаваемых параметров- Specified by:
argsCasingin interfaceArgsCasing- Returns:
- 0 - нет различий,
1 - кол-во входных и исходящих параметров различается на один параметер,
2 - кол-во входных и исходящих параметров различается на два параметера, ...
-
invariantArgs
public int invariantArgs()Description copied from interface:InvariantArgsВозвращает кол-во аргументов которые передаются без изменения типов данных- Specified by:
invariantArgsin interfaceInvariantArgs- Returns:
- 0 - нет аргументов которые передаются без изменения типов данных
1 - один аргумент
-
primitiveCastArgs
public int primitiveCastArgs()Description copied from interface:PrimitiveCastArgsВозвращает кол-во аргументов которые передаются с преобразованием примитивных типов данных- Specified by:
primitiveCastArgsin interfacePrimitiveCastArgs- Returns:
- 0 - нет аргументов которые передаются с преобразованием примитивных типов данных
1 - один аргумент
-
castLooseDataArgs
public int castLooseDataArgs()Description copied from interface:CastLooseDataArgsВозвращает кол-во аргументов которые передаются с преобразованием примитивных типов данных и потерей точности данных при преобразовании- Specified by:
castLooseDataArgsin interfaceCastLooseDataArgs- Returns:
- 0 - нет аргументов которые передаются
с преобразованием примитивных типов данных
и потерей точности данных при преобразовании
1 - один аргумент
-
covariantArgs
public int covariantArgs()Description copied from interface:CovariantArgsВозвращает кол-во аргументов которые передаются с ковариантным преобразованием типов данных- Specified by:
covariantArgsin interfaceCovariantArgs- Returns:
- 0 - нет аргументов которые передаются с ковариантным преобразованием типов данных
1 - один аргумент
-
implicitArgs
public int implicitArgs()Description copied from interface:ImplicitArgsВозвращает кол-во аргументов которые передаются с неявным преобразованием типов данных- Specified by:
implicitArgsin interfaceImplicitArgs- Returns:
- 0 - нет аргументов которые передаются с неявным преобразованием типов данных
1 - один аргумент
-
parameterCount
public int parameterCount()Description copied from interface:ParameterCountВозвращает кол-во передаваемых типов данных- Specified by:
parameterCountin interfaceParameterCount- Returns:
- кол-во параметров
-
toString
public java.lang.String toString()- Overrides:
toStringin classjava.lang.Object
-