mirror of
https://github.com/immich-app/immich.git
synced 2025-12-17 09:13:17 +03:00
18 lines
582 B
Dart
18 lines
582 B
Dart
|
|
import 'dart:math';
|
||
|
|
|
||
|
|
import 'package:drift/drift.dart';
|
||
|
|
// ignore: invalid_use_of_internal_member, implementation_imports
|
||
|
|
import 'package:drift/src/runtime/query_builder/expressions/internal.dart';
|
||
|
|
|
||
|
|
extension DoubleTruncateExpression<T extends num> on Expression<T> {
|
||
|
|
Expression<T> truncateTo(int fractionDigits) {
|
||
|
|
final mod = Constant(pow(10, fractionDigits).toDouble());
|
||
|
|
return BaseInfixOperator(
|
||
|
|
BaseInfixOperator(this, '*', mod, precedence: Precedence.mulDivide).cast(DriftSqlType.int),
|
||
|
|
'/',
|
||
|
|
mod,
|
||
|
|
precedence: Precedence.mulDivide,
|
||
|
|
);
|
||
|
|
}
|
||
|
|
}
|