Well you cannot create types at runtime. 
    
    
    type
      VariantKind = enum
        vkString
        vkInt
      
      VariantType = object
        case kind: VariantKind
        of vkString:
          strValue: string
        of vkInt:
          intValue: int
    
    proc getArg(typeName:string, strValue:string): VariantType =
      case typeName:
      of "string":
        result.kind = vkString
        result.strValue = strValue
      of "int":
        result.kind = vkInt
        result.intValue = parseInt(strValue)
      else:
        # do some error handling
        discard
    
    
    
    
    

Reply via email to