@@ -3456,6 +3456,7 @@ module Db {
3456
3456
// --- Annotations
3457
3457
export function embedded ( def :EntityType < any > , binding ? :Internal . IBinding ) :PropertyDecorator {
3458
3458
return function ( target : Object , propertyKey : string | symbol ) {
3459
+ if ( ! def ) throw new Error ( "Cannot find embedded class for " + propertyKey . toString ( ) ) ;
3459
3460
var ret = meta . embedded ( def , binding ) ;
3460
3461
addDescriptor ( target , propertyKey , ret ) ;
3461
3462
installMetaGetter ( target , propertyKey . toString ( ) , ret ) ;
@@ -3464,6 +3465,7 @@ module Db {
3464
3465
3465
3466
export function reference ( def :EntityType < any > , project ? :string [ ] ) :PropertyDecorator {
3466
3467
return function ( target : Object , propertyKey : string | symbol ) {
3468
+ if ( ! def ) throw new Error ( "Cannot find referenced class for " + propertyKey . toString ( ) ) ;
3467
3469
var ret = meta . reference ( def , project ) ;
3468
3470
addDescriptor ( target , propertyKey , ret ) ;
3469
3471
installMetaGetter ( target , propertyKey . toString ( ) , ret ) ;
@@ -3472,6 +3474,7 @@ module Db {
3472
3474
3473
3475
export function map ( valueType :EntityType < any > , reference :boolean = false , sorting ? :Internal . SortingData ) :PropertyDecorator {
3474
3476
return function ( target : Object , propertyKey : string | symbol ) {
3477
+ if ( ! valueType ) throw new Error ( "Cannot find map value type for " + propertyKey . toString ( ) ) ;
3475
3478
var ret = meta . map ( valueType , reference , sorting ) ;
3476
3479
addDescriptor ( target , propertyKey , ret ) ;
3477
3480
installMetaGetter ( target , propertyKey . toString ( ) , ret ) ;
@@ -3480,6 +3483,7 @@ module Db {
3480
3483
3481
3484
export function set ( valueType :EntityType < any > , reference :boolean = false , sorting ? :Internal . SortingData ) :PropertyDecorator {
3482
3485
return function ( target : Object , propertyKey : string | symbol ) {
3486
+ if ( ! valueType ) throw new Error ( "Cannot find set value type for " + propertyKey . toString ( ) ) ;
3483
3487
var ret = meta . set ( valueType , reference , sorting ) ;
3484
3488
addDescriptor ( target , propertyKey , ret ) ;
3485
3489
installMetaGetter ( target , propertyKey . toString ( ) , ret ) ;
@@ -3488,6 +3492,7 @@ module Db {
3488
3492
3489
3493
export function list ( valueType :EntityType < any > , reference :boolean = false , sorting ? :Internal . SortingData ) :PropertyDecorator {
3490
3494
return function ( target : Object , propertyKey : string | symbol ) {
3495
+ if ( ! valueType ) throw new Error ( "Cannot find list value type for " + propertyKey . toString ( ) ) ;
3491
3496
var ret = meta . list ( valueType , reference , sorting ) ;
3492
3497
addDescriptor ( target , propertyKey , ret ) ;
3493
3498
installMetaGetter ( target , propertyKey . toString ( ) , ret ) ;
@@ -3580,20 +3585,23 @@ module Db {
3580
3585
3581
3586
export module meta {
3582
3587
export function embedded ( def :any , binding ? :Internal . IBinding ) :Db . Internal . EmbeddedMetaDescriptor {
3588
+ if ( ! def ) throw new Error ( "Cannot find embedded class" ) ;
3583
3589
var ret = new Db . Internal . EmbeddedMetaDescriptor ( ) ;
3584
3590
ret . setType ( def ) ;
3585
3591
ret . setBinding ( binding ) ;
3586
3592
return ret ;
3587
3593
}
3588
3594
3589
3595
export function reference ( def :any , project ? :string [ ] ) :Db . Internal . ReferenceMetaDescriptor {
3596
+ if ( ! def ) throw new Error ( "Cannot find referenced class" ) ;
3590
3597
var ret = new Db . Internal . ReferenceMetaDescriptor ( ) ;
3591
3598
ret . setType ( def ) ;
3592
3599
ret . project = project ;
3593
3600
return ret ;
3594
3601
}
3595
3602
3596
3603
export function map ( valuetype : EntityType < any > , reference = false , sorting ? :Internal . SortingData ) :Db . Internal . MapMetaDescriptor {
3604
+ if ( ! valuetype ) throw new Error ( "Cannot find map value type" ) ;
3597
3605
var ret = new Db . Internal . MapMetaDescriptor ( ) ;
3598
3606
ret . setType ( valuetype ) ;
3599
3607
ret . isReference = reference ;
@@ -3602,6 +3610,7 @@ module Db {
3602
3610
}
3603
3611
3604
3612
export function set ( valuetype : EntityType < any > , reference = false , sorting ? :Internal . SortingData ) :Db . Internal . SetMetaDescriptor {
3613
+ if ( ! valuetype ) throw new Error ( "Cannot find set value type" ) ;
3605
3614
var ret = new Db . Internal . SetMetaDescriptor ( ) ;
3606
3615
ret . setType ( valuetype ) ;
3607
3616
ret . isReference = reference ;
@@ -3610,6 +3619,7 @@ module Db {
3610
3619
}
3611
3620
3612
3621
export function list ( valuetype : EntityType < any > , reference = false , sorting ? :Internal . SortingData ) :Db . Internal . ListMetaDescriptor {
3622
+ if ( ! valuetype ) throw new Error ( "Cannot find list value type" ) ;
3613
3623
var ret = new Db . Internal . ListMetaDescriptor ( ) ;
3614
3624
ret . setType ( valuetype ) ;
3615
3625
ret . isReference = reference ;
0 commit comments