Package org.qdl_lang.util.aggregate
Interface ProcessStemValues
- 
- All Superinterfaces:
- Constants
 - All Known Subinterfaces:
- ProcessScalar,- ProcessStemAxisRestriction
 - All Known Implementing Classes:
- AbstractIdentityStemProcess,- AbstractNoOpStemImpl,- AxisRestrictionIdentity,- AxisRestrictionNoOp,- Crypto.CodeChallenge.ProcessCodeChallenge,- Crypto.DoJWTVerify,- Crypto.HexToB64.ProcessHexToB64,- Crypto.IdentityEncryptDecrypt,- Crypto.IdentityJWT,- Crypto.IdentitySymmetricDeorEncrypt,- Crypto.ProcessB64ToHex,- Crypto.ProcessB64ToInt,- Crypto.ProcessHexToInt,- Crypto.ProcessIntToB64,- Crypto.ProcessIntToHex,- Crypto.ReadOID.IdentityOIDS,- IdentityScalarImpl,- NoOpScalarImpl,- QDLStem.ARGetkeys,- QDLStem.SizeOf,- StemEvaluator.ARForEachImpl,- StemEvaluator.SizeOf,- SystemEvaluator.ReduceAll
 
 public interface ProcessStemValues extends Constants Interface for processors that traverse stems. Each method gets the current key. Note that there are not methods for sets or stems here since these are handled differently at lower levels, i.e. you must recurse through them. Effectively, this processes scalars only.ProcessScalarprocesses each element in a nested stem or set.ProcessStemAxisRestrictiontreats the stems or sets along an axis as aggregates. This handles Java objects, notQDLValues. To return a QDL value, wrap it usingQDLValue.asQDLValue(Object).UsageEach call has an index that is the stem path to the coordinates. So if you access A.b.c.d, then the index is [b,c] and the key is d. Note that the default value here refers to the default for this processor, i.e., what to return if there is no other logic. It ranges from just handing it back for the identity processor to throwing an exception in almost every case for the no-op processor. 
- 
- 
Field Summary- 
Fields inherited from interface org.qdl_lang.variables.ConstantsALL_INDICES_NAME, ALL_INDICES_TYPE, ARG_COUNT_TYPE, AXIS_RESTRICTION_NAME, AXIS_RESTRICTION_TYPE, BOOLEAN_NAME, BOOLEAN_TYPE, DECIMAL_NAME, DECIMAL_TYPE, DYADIC_FUNCTION_NAME, DYADIC_FUNCTION_TYPE, FUNCTION_NAME, FUNCTION_TYPE, INTEGER_TYPE, LIST_NAME, LIST_TYPE, LONG_NAME, LONG_TYPE, MODULE_NAME, MODULE_TYPE, NULL_NAME, NULL_TYPE, SET_NAME, SET_TYPE, STEM_NAME, STEM_TYPE, STRING_NAME, STRING_TYPE, UNKNOWN_NAME, UNKNOWN_TYPE
 
- 
 - 
Method SummaryAll Methods Instance Methods Abstract Methods Modifier and Type Method Description Objectprocess(List<Object> index, Object key, Boolean booleanValue)Objectprocess(List<Object> index, Object key, Long longValue)Objectprocess(List<Object> index, Object key, String stringValue)Objectprocess(List<Object> index, Object key, BigDecimal decimalValue)Objectprocess(List<Object> index, Object key, Module moduleValue)Objectprocess(List<Object> index, Object key, DyadicFunctionReferenceNode dyadicFunctionReferenceNode)Objectprocess(List<Object> index, Object key, FunctionReferenceNode frValue)Objectprocess(List<Object> index, Object key, QDLNull nullValue)Objectprocess(List<Object> index, Object key, QDLValue qdlValue)
 
- 
- 
- 
Method Detail- 
processObject process(List<Object> index, Object key, BigDecimal decimalValue) 
 - 
processObject process(List<Object> index, Object key, FunctionReferenceNode frValue) 
 - 
processObject process(List<Object> index, Object key, DyadicFunctionReferenceNode dyadicFunctionReferenceNode) 
 
- 
 
-