[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread walter erquinigo via Phabricator via lldb-commits
wallace added inline comments.



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:960
+int commit_points_index = -1;
+for (uint32_t breakpoint_index = 0; breakpoint_index < 
commit_points.size(); breakpoint_index++) {
+  int breakpoint_position = match.rfind(commit_points[breakpoint_index]);

int or size_t is fine


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73506/new/

https://reviews.llvm.org/D73506



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread Héctor Luis Díaz Aceves via Phabricator via lldb-commits
diazhector98 updated this revision to Diff 240701.
diazhector98 added a comment.

Uncomment @skipIfDarwin


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73506/new/

https://reviews.llvm.org/D73506

Files:
  
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
  lldb/tools/lldb-vscode/lldb-vscode.cpp

Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,27 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
+
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector commit_points = {".", "->"};
+int max_breakpoint_position = -1;
+int commit_points_index = -1;
+for (uint32_t breakpoint_index = 0; breakpoint_index < commit_points.size(); breakpoint_index++) {
+  int breakpoint_position = match.rfind(commit_points[breakpoint_index]);
+  if (max_breakpoint_position < breakpoint_position){
+commit_points_index = breakpoint_index;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+
+if (max_breakpoint_position != -1) {
+  std::string cut_match = match.substr(max_breakpoint_position + commit_points[commit_points_index].length(), match.length() - max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else {
+  EmplaceSafeString(item, "text", match);
+}
+
 if (description.empty())
   EmplaceSafeString(item, "label", match);
 else
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
@@ -1,6 +1,17 @@
 #include 
 #include 
 
+struct bar {
+  int var1;
+};
+
+struct foo {
+  int var1;
+  bar* my_bar_pointer;
+  bar my_bar_object;
+  foo* next_foo;
+};
+
 int fun(std::vector var) {
   return var.size(); // breakpoint 1
 }
@@ -12,5 +23,8 @@
   std::string str2 = "b";
   std::vector vec;
   fun(vec);
+  bar bar1 = {2};
+  bar* bar2 =  
+  foo foo1 = {3,, bar1, NULL};
   return 0; // breakpoint 2
 }
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
@@ -113,3 +113,43 @@
 }
 ],
 )
+
+self.verify_completions(
+self.vscode.get_completions("foo1.v"),
+[
+{
+"text": "var1",
+"label": "foo1.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.my_bar_object.v"),
+[
+{
+"text": "var1",
+"label": "foo1.my_bar_object.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.var1 + foo1.v"),
+[
+{
+"text": "var1",
+"label": "foo1.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.var1 + v"),
+[
+{
+"text": "var1",
+"label": "var1 -- int &"
+}
+]
+)
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread Héctor Luis Díaz Aceves via Phabricator via lldb-commits
diazhector98 updated this revision to Diff 240700.
diazhector98 added a comment.

Added more tests


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73506/new/

https://reviews.llvm.org/D73506

Files:
  
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
  lldb/tools/lldb-vscode/lldb-vscode.cpp

Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,27 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
+
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector commit_points = {".", "->"};
+int max_breakpoint_position = -1;
+int commit_points_index = -1;
+for (uint32_t breakpoint_index = 0; breakpoint_index < commit_points.size(); breakpoint_index++) {
+  int breakpoint_position = match.rfind(commit_points[breakpoint_index]);
+  if (max_breakpoint_position < breakpoint_position){
+commit_points_index = breakpoint_index;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+
+if (max_breakpoint_position != -1) {
+  std::string cut_match = match.substr(max_breakpoint_position + commit_points[commit_points_index].length(), match.length() - max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else {
+  EmplaceSafeString(item, "text", match);
+}
+
 if (description.empty())
   EmplaceSafeString(item, "label", match);
 else
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
@@ -1,6 +1,17 @@
 #include 
 #include 
 
+struct bar {
+  int var1;
+};
+
+struct foo {
+  int var1;
+  bar* my_bar_pointer;
+  bar my_bar_object;
+  foo* next_foo;
+};
+
 int fun(std::vector var) {
   return var.size(); // breakpoint 1
 }
@@ -12,5 +23,8 @@
   std::string str2 = "b";
   std::vector vec;
   fun(vec);
+  bar bar1 = {2};
+  bar* bar2 =  
+  foo foo1 = {3,, bar1, NULL};
   return 0; // breakpoint 2
 }
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
@@ -23,7 +23,7 @@
 self.assertFalse(not_expected_item in actual_list)
 
 @skipIfWindows
-@skipIfDarwin # Skip this test for now until we can figure out why tings aren't working on build bots
+#@skipIfDarwin # Skip this test for now until we can figure out why tings aren't working on build bots
 def test_completions(self):
 """
 Tests the completion request at different breakpoints
@@ -113,3 +113,43 @@
 }
 ],
 )
+
+self.verify_completions(
+self.vscode.get_completions("foo1.v"),
+[
+{
+"text": "var1",
+"label": "foo1.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.my_bar_object.v"),
+[
+{
+"text": "var1",
+"label": "foo1.my_bar_object.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.var1 + foo1.v"),
+[
+{
+"text": "var1",
+"label": "foo1.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.var1 + v"),
+[
+{
+"text": "var1",
+"label": "var1 -- int &"
+}
+]
+)
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread Héctor Luis Díaz Aceves via Phabricator via lldb-commits
diazhector98 updated this revision to Diff 240694.
diazhector98 added a comment.



1. Updating D73506 : Bug fix #
2. Enter a brief description of the changes included in this update.
3. The first line is used as subject, next lines as comment. #
4. If you intended to create a new revision, use:
5. $ arc diff --create

Brackets syntax


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73506/new/

https://reviews.llvm.org/D73506

Files:
  
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
  lldb/tools/lldb-vscode/lldb-vscode.cpp


Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,27 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
+
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector commit_points = {".", "->"};
+int max_breakpoint_position = -1;
+int commit_points_index = -1;
+for (uint32_t breakpoint_index = 0; breakpoint_index < 
commit_points.size(); breakpoint_index++) {
+  int breakpoint_position = match.rfind(commit_points[breakpoint_index]);
+  if (max_breakpoint_position < breakpoint_position){
+commit_points_index = breakpoint_index;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+
+if (max_breakpoint_position != -1) {
+  std::string cut_match = match.substr(max_breakpoint_position + 
commit_points[commit_points_index].length(), match.length() - 
max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else {
+  EmplaceSafeString(item, "text", match);
+}
+
 if (description.empty())
   EmplaceSafeString(item, "label", match);
 else
Index: 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
@@ -1,6 +1,17 @@
 #include 
 #include 
 
+struct bar {
+  int var1;
+};
+
+struct foo {
+  int var1;
+  bar* my_bar_pointer;
+  bar my_bar_object;
+  foo* next_foo;
+};
+
 int fun(std::vector var) {
   return var.size(); // breakpoint 1
 }
@@ -12,5 +23,8 @@
   std::string str2 = "b";
   std::vector vec;
   fun(vec);
+  bar bar1 = {2};
+  bar* bar2 =  
+  foo foo1 = {3,, bar1, NULL};
   return 0; // breakpoint 2
 }
Index: 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
===
--- 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
+++ 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
@@ -113,3 +113,23 @@
 }
 ],
 )
+
+self.verify_completions(
+self.vscode.get_completions("foo1.v"),
+[
+{
+"text": "var1",
+"label": "foo1.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.my_bar_object.v"),
+[
+{
+"text": "var1",
+"label": "foo1.my_bar_object.var1 -- int"
+}
+]
+)


Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,27 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
+
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector commit_points = {".", "->"};
+int max_breakpoint_position = -1;
+int commit_points_index = -1;
+for (uint32_t breakpoint_index = 0; breakpoint_index < commit_points.size(); breakpoint_index++) {
+  int breakpoint_position = match.rfind(commit_points[breakpoint_index]);
+  if (max_breakpoint_position < breakpoint_position){
+commit_points_index = breakpoint_index;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+
+if (max_breakpoint_position != -1) {
+  std::string cut_match = match.substr(max_breakpoint_position + commit_points[commit_points_index].length(), match.length() - max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else 

[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread Héctor Luis Díaz Aceves via Phabricator via lldb-commits
diazhector98 updated this revision to Diff 240693.
diazhector98 added a comment.



1. Updating D73506 : Bug fix #
2. Enter a brief description of the changes included in this update.
3. The first line is used as subject, next lines as comment. #
4. If you intended to create a new revision, use:
5. $ arc diff --create

Replaced storing breakpoint string with its index
.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73506/new/

https://reviews.llvm.org/D73506

Files:
  
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
  lldb/tools/lldb-vscode/lldb-vscode.cpp


Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,27 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
+
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector commit_points = {".", "->"};
+int max_breakpoint_position = -1;
+int commit_points_index = -1;
+for (uint32_t breakpoint_index = 0; breakpoint_index < 
commit_points.size(); breakpoint_index++){
+  int breakpoint_position = match.rfind(commit_points[breakpoint_index]);
+  if (max_breakpoint_position < breakpoint_position){
+commit_points_index = breakpoint_index;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+
+if (max_breakpoint_position != -1) {
+  std::string cut_match = match.substr(max_breakpoint_position + 
commit_points[commit_points_index].length(), match.length() - 
max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else {
+  EmplaceSafeString(item, "text", match);
+}
+
 if (description.empty())
   EmplaceSafeString(item, "label", match);
 else
Index: 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
@@ -1,6 +1,17 @@
 #include 
 #include 
 
+struct bar {
+  int var1;
+};
+
+struct foo {
+  int var1;
+  bar* my_bar_pointer;
+  bar my_bar_object;
+  foo* next_foo;
+};
+
 int fun(std::vector var) {
   return var.size(); // breakpoint 1
 }
@@ -12,5 +23,8 @@
   std::string str2 = "b";
   std::vector vec;
   fun(vec);
+  bar bar1 = {2};
+  bar* bar2 =  
+  foo foo1 = {3,, bar1, NULL};
   return 0; // breakpoint 2
 }
Index: 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
===
--- 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
+++ 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
@@ -113,3 +113,23 @@
 }
 ],
 )
+
+self.verify_completions(
+self.vscode.get_completions("foo1.v"),
+[
+{
+"text": "var1",
+"label": "foo1.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.my_bar_object.v"),
+[
+{
+"text": "var1",
+"label": "foo1.my_bar_object.var1 -- int"
+}
+]
+)


Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,27 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
+
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector commit_points = {".", "->"};
+int max_breakpoint_position = -1;
+int commit_points_index = -1;
+for (uint32_t breakpoint_index = 0; breakpoint_index < commit_points.size(); breakpoint_index++){
+  int breakpoint_position = match.rfind(commit_points[breakpoint_index]);
+  if (max_breakpoint_position < breakpoint_position){
+commit_points_index = breakpoint_index;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+
+if (max_breakpoint_position != -1) {
+  std::string cut_match = match.substr(max_breakpoint_position + commit_points[commit_points_index].length(), match.length() - max_breakpoint_position);
+  

[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread Héctor Luis Díaz Aceves via Phabricator via lldb-commits
diazhector98 updated this revision to Diff 240687.
diazhector98 added a comment.



1. Updating D73506 : Bug fix #
2. Enter a brief description of the changes included in this update.
3. The first line is used as subject, next lines as comment. #
4. If you intended to create a new revision, use:
5. $ arc diff --create

Syntax fixes and uncommenting @darwin

As title


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73506/new/

https://reviews.llvm.org/D73506

Files:
  
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
  lldb/tools/lldb-vscode/lldb-vscode.cpp


Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,26 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
+
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector commit_points = {".", "->"};
+int breakpoint_index = -1;
+std::string breakpoint_string = "";
+for (std::string breakpoint : breakpoints) {
+  int breakpoint_position = match.rfind(breakpoint);
+  if (max_breakpoint_position < breakpoint_position){
+breakpoint_string = breakpoint;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+if (max_breakpoint_position != -1) {
+  std::string cut_match = match.substr(max_breakpoint_position + 
breakpoint_string.length(), match.length() - max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else {
+  EmplaceSafeString(item, "text", match);
+}
+
 if (description.empty())
   EmplaceSafeString(item, "label", match);
 else
Index: 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
@@ -1,6 +1,17 @@
 #include 
 #include 
 
+struct bar {
+  int var1;
+};
+
+struct foo {
+  int var1;
+  bar* my_bar_pointer;
+  bar my_bar_object;
+  foo* next_foo;
+};
+
 int fun(std::vector var) {
   return var.size(); // breakpoint 1
 }
@@ -12,5 +23,8 @@
   std::string str2 = "b";
   std::vector vec;
   fun(vec);
+  bar bar1 = {2};
+  bar* bar2 =  
+  foo foo1 = {3,, bar1, NULL};
   return 0; // breakpoint 2
 }
Index: 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
===
--- 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
+++ 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
@@ -113,3 +113,23 @@
 }
 ],
 )
+
+self.verify_completions(
+self.vscode.get_completions("foo1.v"),
+[
+{
+"text": "var1",
+"label": "foo1.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.my_bar_object->v"),
+[
+{
+"text": "var1",
+"label": "foo1.my_bar_object.var1 -- int"
+}
+]
+)


Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,26 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
+
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector commit_points = {".", "->"};
+int breakpoint_index = -1;
+std::string breakpoint_string = "";
+for (std::string breakpoint : breakpoints) {
+  int breakpoint_position = match.rfind(breakpoint);
+  if (max_breakpoint_position < breakpoint_position){
+breakpoint_string = breakpoint;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+if (max_breakpoint_position != -1) {
+  std::string cut_match = match.substr(max_breakpoint_position + breakpoint_string.length(), match.length() - max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else {
+  EmplaceSafeString(item, "text", match);
+}
+
 if (description.empty())
   EmplaceSafeString(item, "label", match);
 else
Index: 

[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread Héctor Luis Díaz Aceves via Phabricator via lldb-commits
diazhector98 updated this revision to Diff 240683.
diazhector98 added a comment.



1. Updating D73506 : Bug fix #
2. Enter a brief description of the changes included in this update.
3. The first line is used as subject, next lines as comment. #
4. If you intended to create a new revision, use:
5. $ arc diff --create

Removed print statements

As title


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73506/new/

https://reviews.llvm.org/D73506

Files:
  
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
  lldb/tools/lldb-vscode/lldb-vscode.cpp

Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,25 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector breakpoints = {".", "->"};
+int max_breakpoint_position = -1;
+std::string breakpoint_string = "";
+for (std::string breakpoint : breakpoints){
+  int breakpoint_position = match.rfind(breakpoint);
+  if (max_breakpoint_position < breakpoint_position){
+breakpoint_string = breakpoint;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+if (max_breakpoint_position != -1){
+  std::string cut_match = match.substr(max_breakpoint_position + breakpoint_string.length(), match.length() - max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else {
+  EmplaceSafeString(item, "text", match);
+}
+
 if (description.empty())
   EmplaceSafeString(item, "label", match);
 else
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
@@ -350,6 +350,8 @@
 
 def get_completions(self, text):
 response = self.request_completions(text)
+print(response['body']['targets'])
+print("==")
 return response['body']['targets']
 
 def get_scope_variables(self, scope_name, frameIndex=0, threadId=None):
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
@@ -1,6 +1,17 @@
 #include 
 #include 
 
+struct bar {
+  int var1;
+};
+
+struct foo {
+  int var1;
+  bar* my_bar_pointer;
+  bar my_bar_object;
+  foo* next_foo;
+};
+
 int fun(std::vector var) {
   return var.size(); // breakpoint 1
 }
@@ -12,5 +23,8 @@
   std::string str2 = "b";
   std::vector vec;
   fun(vec);
+  bar bar1 = {2};
+  bar* bar2 =  
+  foo foo1 = {3,, bar1, NULL};
   return 0; // breakpoint 2
 }
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
@@ -23,7 +23,7 @@
 self.assertFalse(not_expected_item in actual_list)
 
 @skipIfWindows
-@skipIfDarwin # Skip this test for now until we can figure out why tings aren't working on build bots
+#@skipIfDarwin # Skip this test for now until we can figure out why tings aren't working on build bots
 def test_completions(self):
 """
 Tests the completion request at different breakpoints
@@ -113,3 +113,23 @@
 }
 ],
 )
+
+self.verify_completions(
+self.vscode.get_completions("foo1.v"),
+[
+{
+"text": "var1",
+"label": "foo1.var1 -- int"
+}
+]
+)
+
+self.verify_completions(
+self.vscode.get_completions("foo1.my_bar_object->v"),
+[
+{
+"text": "var1",
+"label": "foo1.my_bar_object.var1 -- int"
+}
+]
+)
___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread Héctor Luis Díaz Aceves via Phabricator via lldb-commits
diazhector98 planned changes to this revision.
diazhector98 marked 5 inline comments as done.
diazhector98 added inline comments.



Comment at: 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py:122
+self.verify_completions(
+self.vscode.get_completions("foo1.v"),
+[

also test this

foo.var1 + var2

foo.var1 + va
  var2
  var1



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:956
+
+std::vector breakpoints = {".", "->"};
+int max_breakpoint_position = -1;

commit_points



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:958
+int max_breakpoint_position = -1;
+std::string breakpoint_string = "";
+for (std::string breakpoint : breakpoints){

int breakpoint_index = -1



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:959
+std::string breakpoint_string = "";
+for (std::string breakpoint : breakpoints){
+  int breakpoint_position = match.rfind(breakpoint);

space before {



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:966
+}
+if (max_breakpoint_position != -1){
+  std::string cut_match = match.substr(max_breakpoint_position + 
breakpoint_string.length(), match.length() - max_breakpoint_position);

space before {




Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D73506/new/

https://reviews.llvm.org/D73506



___
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits


[Lldb-commits] [PATCH] D73506: Bug fix

2020-01-27 Thread Héctor Luis Díaz Aceves via Phabricator via lldb-commits
diazhector98 created this revision.
diazhector98 added a reviewer: wallace.
Herald added a project: LLDB.
Herald added a subscriber: lldb-commits.
diazhector98 planned changes to this revision.
diazhector98 marked 5 inline comments as done.
diazhector98 added inline comments.



Comment at: 
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py:122
+self.verify_completions(
+self.vscode.get_completions("foo1.v"),
+[

also test this

foo.var1 + var2

foo.var1 + va
  var2
  var1



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:956
+
+std::vector breakpoints = {".", "->"};
+int max_breakpoint_position = -1;

commit_points



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:958
+int max_breakpoint_position = -1;
+std::string breakpoint_string = "";
+for (std::string breakpoint : breakpoints){

int breakpoint_index = -1



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:959
+std::string breakpoint_string = "";
+for (std::string breakpoint : breakpoints){
+  int breakpoint_position = match.rfind(breakpoint);

space before {



Comment at: lldb/tools/lldb-vscode/lldb-vscode.cpp:966
+}
+if (max_breakpoint_position != -1){
+  std::string cut_match = match.substr(max_breakpoint_position + 
breakpoint_string.length(), match.length() - max_breakpoint_position);

space before {




TODO


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D73506

Files:
  
lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
  lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
  lldb/tools/lldb-vscode/lldb-vscode.cpp

Index: lldb/tools/lldb-vscode/lldb-vscode.cpp
===
--- lldb/tools/lldb-vscode/lldb-vscode.cpp
+++ lldb/tools/lldb-vscode/lldb-vscode.cpp
@@ -951,9 +951,25 @@
   for (size_t i = 0; i < count; i++) {
 std::string match = matches.GetStringAtIndex(i);
 std::string description = descriptions.GetStringAtIndex(i);
-
 llvm::json::Object item;
-EmplaceSafeString(item, "text", match);
+
+std::vector breakpoints = {".", "->"};
+int max_breakpoint_position = -1;
+std::string breakpoint_string = "";
+for (std::string breakpoint : breakpoints){
+  int breakpoint_position = match.rfind(breakpoint);
+  if (max_breakpoint_position < breakpoint_position){
+breakpoint_string = breakpoint;
+max_breakpoint_position = breakpoint_position;
+  }
+}
+if (max_breakpoint_position != -1){
+  std::string cut_match = match.substr(max_breakpoint_position + breakpoint_string.length(), match.length() - max_breakpoint_position);
+  EmplaceSafeString(item, "text", cut_match);
+} else {
+  EmplaceSafeString(item, "text", match);
+}
+
 if (description.empty())
   EmplaceSafeString(item, "label", match);
 else
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/vscode.py
@@ -350,6 +350,8 @@
 
 def get_completions(self, text):
 response = self.request_completions(text)
+print(response['body']['targets'])
+print("==")
 return response['body']['targets']
 
 def get_scope_variables(self, scope_name, frameIndex=0, threadId=None):
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/main.cpp
@@ -1,6 +1,17 @@
 #include 
 #include 
 
+struct bar {
+  int var1;
+};
+
+struct foo {
+  int var1;
+  bar* my_bar_pointer;
+  bar my_bar_object;
+  foo* next_foo;
+};
+
 int fun(std::vector var) {
   return var.size(); // breakpoint 1
 }
@@ -12,5 +23,8 @@
   std::string str2 = "b";
   std::vector vec;
   fun(vec);
+  bar bar1 = {2};
+  bar* bar2 =  
+  foo foo1 = {3,, bar1, NULL};
   return 0; // breakpoint 2
 }
Index: lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
===
--- lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
+++ lldb/packages/Python/lldbsuite/test/tools/lldb-vscode/completions/TestVSCode_completions.py
@@ -16,6 +16,10 @@
 mydir = TestBase.compute_mydir(__file__)
 
 def verify_completions(self, actual_list, expected_list,