Lines Matching defs:context
247 bool Operator::determineBinaryType(const Context& context,
253 const bool allowNarrowing = context.fConfig->fSettings.fAllowNarrowingConversions;
269 *outResultType = context.fTypes.fBool.get();
276 *outResultType = context.fTypes.fBool.get();
285 *outLeftType = context.fTypes.fBool.get();
286 *outRightType = context.fTypes.fBool.get();
287 *outResultType = context.fTypes.fBool.get();
288 return left.canCoerceTo(*context.fTypes.fBool, allowNarrowing) &&
289 right.canCoerceTo(*context.fTypes.fBool, allowNarrowing);
312 if (!this->determineBinaryType(context, left.componentType(), right.componentType(),
317 *outLeftType = &(*outResultType)->toCompound(context, left.columns(), left.rows());
318 *outRightType = &(*outResultType)->toCompound(context, right.columns(), right.rows());
327 *outResultType = &(*outResultType)->toCompound(context, rightColumns, leftRows);
330 *outResultType = &(*outResultType)->toCompound(context, leftRows, rightColumns);
344 if (!this->determineBinaryType(context, left.componentType(), right,
349 *outLeftType = &(*outLeftType)->toCompound(context, left.columns(), left.rows());
351 *outResultType = &(*outResultType)->toCompound(context, left.columns(), left.rows());
360 if (!this->determineBinaryType(context, left, right.componentType(),
365 *outRightType = &(*outRightType)->toCompound(context, right.columns(), right.rows());
367 *outResultType = &(*outResultType)->toCompound(context, right.columns(), right.rows());
396 *outResultType = context.fTypes.fBool.get();