From 2df41c43e2e2005279ae1d1016329daab368ad23 Mon Sep 17 00:00:00 2001 From: Max Schaefer Date: Wed, 24 Jul 2019 11:29:01 +0100 Subject: [PATCH] JavaScript: Make name of `hasLocation` relation in location manager configurable. --- .../src/com/semmle/js/extractor/LocationManager.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/javascript/extractor/src/com/semmle/js/extractor/LocationManager.java b/javascript/extractor/src/com/semmle/js/extractor/LocationManager.java index edc86639ca3..0216742b580 100644 --- a/javascript/extractor/src/com/semmle/js/extractor/LocationManager.java +++ b/javascript/extractor/src/com/semmle/js/extractor/LocationManager.java @@ -20,6 +20,7 @@ public class LocationManager { private int startColumn; private int startLine; private final Set locationDefaultEmitted = new LinkedHashSet(); + private String hasLocation = "hasLocation"; public LocationManager(File sourceFile, TrapWriter trapWriter, Label fileLabel) { this.sourceFile = sourceFile; @@ -58,6 +59,10 @@ public class LocationManager { startColumn = column; } + public void setHasLocationTable(String hasLocation) { + this.hasLocation = hasLocation; + } + /** * Emit location information for an AST node. The node's location is translated from the parser's * 0-based column numbering scheme into our 1-based scheme and then emitted as a snippet location. @@ -91,7 +96,7 @@ public class LocationManager { /** Emit an absolute location in the current file. No line or column adjustment is performed. */ public void emitFileLocation(Label lbl, int sl, int sc, int el, int ec) { Label locLabel = emitLocationsDefault(sl, sc, el, ec); - trapWriter.addTuple("hasLocation", lbl, locLabel); + trapWriter.addTuple(hasLocation, lbl, locLabel); } /**