Class PyUtilities
- java.lang.Object
- 
- com.inductiveautomation.ignition.common.PyUtilities
 
- 
 public final class PyUtilities extends java.lang.Object
- 
- 
Method SummaryAll Methods Static Methods Concrete Methods Modifier and Type Method Description static booleanisIterable(org.python.core.PyObject pyObject)Predicate that returns true if the provided object is iterable - which is a superset of sequences, as an iterable doesn't have to be sized.static booleanisSequence(org.python.core.PyObject pyObject)Predicate that returns true if the provided object is a sequence, per Java convention - meaning, strings are not considered sequences.static booleanisString(org.python.core.PyObject pyObject)Simple predicate that returns true if the provided object is a Python string (ie, inherits fromPyBaseString.static java.util.stream.Stream<org.python.core.PyObject>stream(org.python.core.PyObject pyObject)Stream items frompyObject.static java.util.stream.Stream<org.apache.commons.lang3.tuple.Pair<org.python.core.PyObject,org.python.core.PyObject>>streamEntries(org.python.core.PyObject pyObject)Stream entries frompyObject, in a key: valuePair.static <T> java.util.stream.Collector<T,java.lang.Object,org.python.core.PyDictionary>toPyDictionary(java.util.function.Function<T,?> keyExtractor, java.util.function.Function<T,?> valueExtractor)Collect a stream ofTinto a new PyDictionary.static java.util.stream.Collector<org.python.core.PyObject,java.lang.Object,org.python.core.PyList>toPyList()Collect a stream into a new PyList.
 
- 
- 
- 
Method Detail- 
isStringpublic static boolean isString(org.python.core.PyObject pyObject) Simple predicate that returns true if the provided object is a Python string (ie, inherits fromPyBaseString.
 - 
isSequencepublic static boolean isSequence(org.python.core.PyObject pyObject) Predicate that returns true if the provided object is a sequence, per Java convention - meaning, strings are not considered sequences.
 - 
isIterablepublic static boolean isIterable(org.python.core.PyObject pyObject) Predicate that returns true if the provided object is iterable - which is a superset of sequences, as an iterable doesn't have to be sized. Returns true for strings as well.
 - 
streampublic static java.util.stream.Stream<org.python.core.PyObject> stream(org.python.core.PyObject pyObject) Stream items frompyObject. Per Python behavior, will stream characters one-by-one in a string.- Throws:
- org.python.core.PyException- TypeError if provided PyObject is not iterable.
 
 - 
streamEntriespublic static java.util.stream.Stream<org.apache.commons.lang3.tuple.Pair<org.python.core.PyObject,org.python.core.PyObject>> streamEntries(org.python.core.PyObject pyObject) Stream entries frompyObject, in a key: valuePair.- Throws:
- org.python.core.PyException- TypeError if provided PyObject is not iterable.
- java.lang.IllegalArgumentException- if provided PyObject is not a mapping type.
 
 - 
toPyListpublic static java.util.stream.Collector<org.python.core.PyObject,java.lang.Object,org.python.core.PyList> toPyList() Collect a stream into a new PyList.
 - 
toPyDictionarypublic static <T> java.util.stream.Collector<T,java.lang.Object,org.python.core.PyDictionary> toPyDictionary(java.util.function.Function<T,?> keyExtractor, java.util.function.Function<T,?> valueExtractor)Collect a stream ofTinto a new PyDictionary.- Type Parameters:
- T- The incoming type, eg- Map.Entryor- Pair.
- Parameters:
- keyExtractor- The key extractor, eg- Map.Entry.getKey(). Should not return a PyObject directly.
- valueExtractor- The value extractor, eg- Map.Entry.getValue(). Should not return a PyObject directly.
- Returns:
- a new PyDictionary.
 
 
- 
 
-