| // Copyright 2014 The Flutter Authors. All rights reserved. |
| // Use of this source code is governed by a BSD-style license that can be |
| // found in the LICENSE file. |
| |
| import 'bitfield.dart' as bitfield; |
| |
| /// The dart:html implementation of [bitfield.kMaxUnsignedSMI]. |
| /// |
| /// This value is used as an optimization to coerce some numbers to be within |
| /// the SMI range and avoid heap allocations. Because number encoding is |
| /// VM-specific, there's no guarantee that this optimization will be effective |
| /// on all JavaScript engines. The value picked here should be correct, but it |
| /// does not have to guarantee efficiency. |
| const int kMaxUnsignedSMI = -1; |
| |
| /// The dart:html implementation of [bitfield.Bitfield]. |
| class BitField<T extends dynamic> implements bitfield.BitField<T> { |
| /// The dart:html implementation of [bitfield.Bitfield]. |
| // Can remove when we have metaclasses. |
| // ignore: avoid_unused_constructor_parameters |
| BitField(int length); |
| |
| /// The dart:html implementation of [bitfield.Bitfield.filled]. |
| // Can remove when we have metaclasses. |
| // ignore: avoid_unused_constructor_parameters |
| BitField.filled(int length, bool value); |
| |
| @override |
| bool operator [](T index) { |
| throw UnsupportedError('Not supported when compiling to JavaScript'); |
| } |
| |
| @override |
| void operator []=(T index, bool value) { |
| throw UnsupportedError('Not supported when compiling to JavaScript'); |
| } |
| |
| @override |
| void reset([ bool value = false ]) { |
| throw UnsupportedError('Not supported when compiling to JavaScript'); |
| } |
| } |