mirror of
https://github.com/esiur/esiur-dart.git
synced 2025-09-29 18:53:19 +00:00
2.0.0
This commit is contained in:
@@ -1,25 +1,15 @@
|
||||
import 'AsyncReply.dart';
|
||||
import '../Resource/Warehouse.dart';
|
||||
|
||||
// class ReplyIndex<T> {
|
||||
// int index;
|
||||
// AsyncReply<T> reply;
|
||||
// T
|
||||
// }
|
||||
|
||||
class AsyncBag<T> extends AsyncReply<List<T>> {
|
||||
List<AsyncReply<T>> _replies = <AsyncReply<T>>[];
|
||||
|
||||
//List<T?> _results = <T>[];
|
||||
|
||||
int _count = 0;
|
||||
bool _sealedBag = false;
|
||||
|
||||
Type? arrayType;
|
||||
|
||||
seal() {
|
||||
//print("SEALED");
|
||||
|
||||
void seal() {
|
||||
if (_sealedBag) return;
|
||||
_sealedBag = true;
|
||||
|
||||
|
@@ -8,7 +8,7 @@ class AsyncException implements Exception {
|
||||
|
||||
AsyncException(this.type, this.code, this.message) {}
|
||||
|
||||
static toAsyncException(Exception ex) {
|
||||
static AsyncException toAsyncException(Exception ex) {
|
||||
return ex is AsyncException
|
||||
? ex
|
||||
: new AsyncException(ErrorType.Exception, 0, ex.toString());
|
||||
|
@@ -45,7 +45,7 @@ class AsyncReply<T> implements Future<T> {
|
||||
return _resultReady;
|
||||
}
|
||||
|
||||
set ready(value) {
|
||||
set ready(bool value) {
|
||||
_resultReady = value;
|
||||
}
|
||||
|
||||
@@ -53,7 +53,7 @@ class AsyncReply<T> implements Future<T> {
|
||||
return _result;
|
||||
}
|
||||
|
||||
setResultReady(bool val) {
|
||||
void setResultReady(bool val) {
|
||||
_resultReady = val;
|
||||
}
|
||||
|
||||
|
@@ -8,7 +8,7 @@ class IEventHandler {
|
||||
|
||||
Map<String, List<Function>> _events = {};
|
||||
|
||||
register(String event) {
|
||||
void register(String event) {
|
||||
_events[event.toLowerCase()] = [];
|
||||
}
|
||||
|
||||
@@ -17,11 +17,11 @@ class IEventHandler {
|
||||
Stream<PropertyModificationInfo> get properyModified =>
|
||||
_propertyModifiedController.stream;
|
||||
|
||||
emitProperty(PropertyModificationInfo event) {
|
||||
void emitProperty(PropertyModificationInfo event) {
|
||||
_propertyModifiedController.add(event);
|
||||
}
|
||||
|
||||
emitArgs(String event, List arguments) {
|
||||
bool emitArgs(String event, List arguments) {
|
||||
//event = event.toLowerCase();
|
||||
|
||||
var et = _events[event.toLowerCase()];
|
||||
@@ -33,14 +33,13 @@ class IEventHandler {
|
||||
return false;
|
||||
}
|
||||
|
||||
on(String event, Function callback) {
|
||||
void on(String event, Function callback) {
|
||||
event = event.toLowerCase();
|
||||
if (!_events.containsKey(event)) register(event);
|
||||
_events[event]?.add(callback);
|
||||
return this;
|
||||
}
|
||||
|
||||
off(String event, callback) {
|
||||
void off(String event, Function? callback) {
|
||||
event = event.toLowerCase();
|
||||
if (_events.containsKey(event)) {
|
||||
if (callback != null)
|
||||
|
@@ -9,6 +9,6 @@ class PropertyModificationInfo {
|
||||
|
||||
String get name => propertyTemplate.name;
|
||||
|
||||
PropertyModificationInfo(
|
||||
const PropertyModificationInfo(
|
||||
this.resource, this.propertyTemplate, this.value, this.age);
|
||||
}
|
||||
|
63
lib/src/Core/Tuple.dart
Normal file
63
lib/src/Core/Tuple.dart
Normal file
@@ -0,0 +1,63 @@
|
||||
class Tuple {
|
||||
final List _list;
|
||||
const Tuple(this._list);
|
||||
operator [](int index) => _list[index];
|
||||
void operator []=(int index, value) {
|
||||
_list[index] = value;
|
||||
}
|
||||
|
||||
int get length => _list.length;
|
||||
}
|
||||
|
||||
class Tuple2<T1, T2> extends Tuple {
|
||||
Tuple2(T1 v1, T2 v2) : super([v1, v2]);
|
||||
T1 get value1 => _list[0] as T1;
|
||||
T2 get value2 => _list[1] as T2;
|
||||
}
|
||||
|
||||
class Tuple3<T1, T2, T3> extends Tuple {
|
||||
Tuple3(T1 v1, T2 v2, T3 v3) : super([v1, v2, v3]);
|
||||
T1 get value1 => _list[0] as T1;
|
||||
T2 get value2 => _list[1] as T2;
|
||||
T3 get value3 => _list[2] as T3;
|
||||
}
|
||||
|
||||
class Tuple4<T1, T2, T3, T4> extends Tuple {
|
||||
Tuple4(T1 v1, T2 v2, T3 v3, T4 v4) : super([v1, v2, v3, v4]);
|
||||
T1 get value1 => _list[0] as T1;
|
||||
T2 get value2 => _list[1] as T2;
|
||||
T3 get value3 => _list[2] as T3;
|
||||
T4 get value4 => _list[3] as T4;
|
||||
}
|
||||
|
||||
class Tuple5<T1, T2, T3, T4, T5> extends Tuple {
|
||||
Tuple5(T1 v1, T2 v2, T3 v3, T4 v4, T5 v5) : super([v1, v2, v3, v4, v5]);
|
||||
T1 get value1 => _list[0] as T1;
|
||||
T2 get value2 => _list[1] as T2;
|
||||
T3 get value3 => _list[2] as T3;
|
||||
T4 get value4 => _list[3] as T4;
|
||||
T5 get value5 => _list[4] as T5;
|
||||
}
|
||||
|
||||
class Tuple6<T1, T2, T3, T4, T5, T6> extends Tuple {
|
||||
Tuple6(T1 v1, T2 v2, T3 v3, T4 v4, T5 v5, T6 v6)
|
||||
: super([v1, v2, v3, v4, v5, v6]);
|
||||
T1 get value1 => _list[0] as T1;
|
||||
T2 get value2 => _list[1] as T2;
|
||||
T3 get value3 => _list[2] as T3;
|
||||
T4 get value4 => _list[3] as T4;
|
||||
T5 get value5 => _list[4] as T5;
|
||||
T6 get value6 => _list[5] as T6;
|
||||
}
|
||||
|
||||
class Tuple7<T1, T2, T3, T4, T5, T6, T7> extends Tuple {
|
||||
Tuple7(T1 v1, T2 v2, T3 v3, T4 v4, T5 v5, T6 v6, T7 v7)
|
||||
: super([v1, v2, v3, v4, v5, v6, v5]);
|
||||
T1 get value1 => _list[0] as T1;
|
||||
T2 get value2 => _list[1] as T2;
|
||||
T3 get value3 => _list[2] as T3;
|
||||
T4 get value4 => _list[3] as T4;
|
||||
T5 get value5 => _list[4] as T5;
|
||||
T6 get value6 => _list[5] as T6;
|
||||
T7 get value7 => _list[6] as T7;
|
||||
}
|
Reference in New Issue
Block a user