Graph-based Pattern-oriented, Context-sensitive Code Completion

Anh Tuan Nguyen, Tung Thanh Nguyen, Hoan Anh Nguyen, Ahmed Tamrawi, Hung Viet Nguyen, Jafar Al-Kofahi,
Tien N. Nguyen

Video Demo Downloads

GraPacc's Features

API Usage Patterns Importing and Visualizing Support

 

QueryPatternGroums
Figure 1. Groums of the query and recommended pattern 55003

 

GraPacc also allows developers to import new patterns into its database. These function helps developers expand their own pattern databases and shared the knowledge about library usages to others. The code for a pattern is given by a user and is processed by GraPacc to create and store as a graph-based representation into its database, called Groum. Figure 1 shows the Groum of the current code in Figure 1 of Code Completion Support section and that of the pattern 55003. The two Groums share three nodes and dependencies between them. They refiect the high relevance between the current code and that pattern.