very-simple-orm
Version:
This is simple orm for typesript/javascript projects
91 lines (80 loc) • 1.89 kB
text/typescript
import { StringType, NumberType, EnumType, DateType, DateTimeType,BooleanType, DoubleType, TextType, CURRENT_TIMESTAMP_TYPE, NULL_TYPE, AS_DEFINED_TYPE} from "./tableInterface"
// run time custom type check fucntions
function stringType(obj:any ):obj is StringType{
if(obj.String){
return obj
}else{
return false
}
}
function numberType(obj:any ):obj is NumberType{
if(obj.Number){
return obj
}else{
return false
}
}
function dateType(obj:any ):obj is DateType{
if(obj.Date){
return obj
}else{
return false
}
}
function dateTimeType(obj:any ):obj is DateTimeType{
if(obj.DateTime){
return obj
}else{
return false
}
}
function enumType(obj:any ):obj is EnumType{
if(obj.Enum){
return obj
}else{
return false
}
}
function booleanType(obj:any ):obj is BooleanType{
if(obj.Boolean){
return obj
}else{
return false
}
}
function doubleType(obj:any ):obj is DoubleType{
if(obj.Double){
return obj
}else{
return false
}
}
function textType(obj:any ):obj is TextType{
if(obj.Text){
return obj
}else{
return false
}
}
function CURRENT_TIMESTAMP(obj:any ):obj is CURRENT_TIMESTAMP_TYPE{
if(obj.CURRENT_TIMESTAMP){
return obj
}else{
return false
}
}
function NULL(obj:any ):obj is NULL_TYPE{
if(obj.NULL){
return obj
}else{
return false
}
}
function AS_DEFINED(obj:any ):obj is AS_DEFINED_TYPE{
if(obj.AS_DEFINED){
return obj
}else{
return false
}
}
export { stringType, numberType, enumType, dateType, dateTimeType, booleanType, doubleType, textType, CURRENT_TIMESTAMP, NULL, AS_DEFINED}