Skip to content

Commit 1de6c02

Browse files
committed
r api commit
1 parent b4e9a11 commit 1de6c02

File tree

12 files changed

+77
-264
lines changed

12 files changed

+77
-264
lines changed

DESCRIPTION

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
Package: RDolphinDB
22
Type: Package
33
Title: Connecting to DolphinDB server with R
4-
Version: 0.8.0
5-
Date: 2018-08-17
4+
Version: 2.0.11.0
5+
Date: 2024-01-29
66
Author: mrDrivingDuck
77
Maintainer: mrDrivingDuck <[email protected]>
88
Description: The R API of DolphinDB.

LICENSE

Lines changed: 0 additions & 204 deletions
This file was deleted.

R/RDolphinDB_impl.R

Lines changed: 19 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -240,46 +240,38 @@ DDB_GetEntity <- function(xxdb_type) {
240240
if (typelist[i] == 5) {
241241
clm <- ReturnTableColumnLogical(i)
242242
NAIndex <- ReturnTableColumnNAIndex(i)
243-
for (j in NAIndex) {
244-
clm[j] <- NA
245-
}
243+
clm[NAIndex] <- NA
246244
result <- cbind(result, clm)
247245

248246
} else if (typelist[i] == 6) {
249247
clm <- ReturnTableColumnInteger(i)
248+
NAIndex <- ReturnTableColumnNAIndex(i)
249+
clm[NAIndex] <- NA
250250
result <- cbind(result, clm)
251251

252252
} else if (typelist[i] == 7) {
253253
clm <- ReturnTableColumnDouble(i)
254254
NAIndex <- ReturnTableColumnNAIndex(i)
255-
for (j in NAIndex) {
256-
clm[j] <- NA
257-
}
255+
clm[NAIndex] <- NA
258256
result <- cbind(result, clm)
259257

260258
} else if (typelist[i] == 8) {
261259
clm <- ReturnTableColumnString(i)
262260
NAIndex <- ReturnTableColumnNAIndex(i)
263-
for (j in NAIndex) {
264-
clm[j] <- NA
265-
}
266-
result <- cbind(result, clm)
261+
clm[NAIndex] <- NA
262+
result <- cbind(result, clm, stringsAsFactors=FALSE)
267263

268264
} else if (typelist[i] == 16) {
269265
clm <- ReturnTableColumnDate(i)
270266
NAIndex <- ReturnTableColumnNAIndex(i)
271-
for (j in NAIndex) {
272-
clm[j] <- NA
273-
}
267+
clm[NAIndex] <- NA
274268
result <- cbind(result, clm)
275269

276270
} else if (typelist[i] == 17) {
277271
# date time
278272
clm <- ReturnTableColumnTime(i)
279273
NAIndex <- ReturnTableColumnNAIndex(i)
280-
for (j in NAIndex) {
281-
clm[j] <- NA
282-
}
274+
clm[NAIndex] <- NA
283275
result <- cbind(result, clm)
284276

285277
} else {
@@ -290,6 +282,10 @@ DDB_GetEntity <- function(xxdb_type) {
290282
}
291283

292284
result <- result[,-1]
285+
if(class(result) != "data.frame"){
286+
# if the result only contains one column, then must convert it to dataFrame Explicitly, or it will be a vecor
287+
result = data.frame(result)
288+
}
293289
colnames(result) <- ReturnTableColumeName()
294290
Clear()
295291
return (result)
@@ -427,45 +423,37 @@ DDB_GetEntity <- function(xxdb_type) {
427423
if (typelist[k] == 5) {
428424
clm <- ReturnTableColumnLogical(k, i)
429425
NAIndex <- ReturnTableColumnNAIndex(k, i)
430-
for (j in NAIndex) {
431-
clm[j] <- NA
432-
}
426+
clm[NAIndex] <- NA
433427
result <- cbind(result, clm)
434428

435429
} else if (typelist[k] == 6) {
436430
clm <- ReturnTableColumnInteger(k, i)
431+
NAIndex <- ReturnTableColumnNAIndex(k, i)
432+
clm[NAIndex] <- NA
437433
result <- cbind(result, clm)
438434

439435
} else if (typelist[k] == 7) {
440436
clm <- ReturnTableColumnDouble(k, i)
441437
NAIndex <- ReturnTableColumnNAIndex(k, i)
442-
for (j in NAIndex) {
443-
clm[j] <- NA
444-
}
438+
clm[NAIndex] <- NA
445439
result <- cbind(result, clm)
446440

447441
} else if (typelist[k] == 8) {
448442
clm <- ReturnTableColumnString(k, i)
449443
NAIndex <- ReturnTableColumnNAIndex(k, i)
450-
for (j in NAIndex) {
451-
clm[j] <- NA
452-
}
444+
clm[NAIndex] <- NA
453445
result <- cbind(result, clm)
454446

455447
} else if (typelist[k] == 16) {
456448
clm <- ReturnTableColumnDate(k, i)
457449
NAIndex <- ReturnTableColumnNAIndex(k, i)
458-
for (j in NAIndex) {
459-
clm[j] <- NA
460-
}
450+
clm[NAIndex] <- NA
461451
result <- cbind(result, clm)
462452

463453
} else if (typelist[k] == 17) {
464454
clm <- ReturnTableColumnTime(k, i)
465455
NAIndex <- ReturnTableColumnNAIndex(k, i)
466-
for (j in NAIndex) {
467-
clm[j] <- NA
468-
}
456+
clm[NAIndex] <- NA
469457
result <- cbind(result, clm)
470458

471459
} else {
-16 Bytes
Binary file not shown.

src/include/AnyVector.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ AnyVectorr::AnyVectorr(DataInputStream &in)
3030

3131
for (int i = 0; i < size; i++)
3232
{
33-
short flag;
33+
short flag{};
3434
in.readShort(flag);
3535

3636
int form = flag >> 8;

src/include/Entity.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -114,7 +114,7 @@ Entity::Entity(int df, int dt, DataInputStream& in)
114114

115115
void Entity::CreateSet(DataInputStream &in)
116116
{
117-
short flag;
117+
short flag{};
118118
in.readShort(flag);
119119
int form = flag >> 8;
120120
int type = flag & 0xff;

src/include/R_CPP_Connector.h

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -54,6 +54,12 @@ class Rcpp_Connector
5454
Rcpp_Connector()
5555
: sessionID(""), remoteLittleEndian(false), connected(false)
5656
{
57+
#ifdef WINDOWS
58+
WSADATA wsaData;
59+
if (WSAStartup(MAKEWORD(2, 1), &wsaData) != 0) {
60+
cout << "[Error] WSAStartup Fail" << endl;
61+
}
62+
#endif
5763
entity = NULL;
5864
anyvector = NULL;
5965
socket = new Socket();
@@ -603,7 +609,7 @@ bool Rcpp_Connector::Rcpp_Connect(string host, int port)
603609
string line;
604610
in -> readLine(line);
605611

606-
int endPos = line.find_first_of(" ", 0);
612+
auto endPos = line.find_first_of(" ", 0);
607613
if (endPos == string::npos)
608614
{
609615
cout << "[ERROR] Data format error" << endl;
@@ -666,7 +672,7 @@ bool Rcpp_Connector::Rcpp_ReceiveHeader()
666672
{
667673
break;
668674
}
669-
int endPos = header.find_first_of(' ', 0);
675+
auto endPos = header.find_first_of(' ', 0);
670676
if (endPos == string::npos)
671677
{
672678
headers.push_back(header);
@@ -732,7 +738,7 @@ int Rcpp_Connector::Rcpp_ReceiveEntity()
732738
{
733739
break;
734740
}
735-
int endPos = header.find_first_of(' ', 0);
741+
auto endPos = header.find_first_of(' ', 0);
736742
if (endPos == string::npos)
737743
{
738744
headers.push_back(header);

0 commit comments

Comments
 (0)