From 5f0a02b17fcc574aa0d6006561e27e9c10e6a286 Mon Sep 17 00:00:00 2001 From: adelphes Date: Sun, 6 May 2018 20:02:31 +0100 Subject: [PATCH] add basic support for kotlin source files --- package.json | 3 +++ src/debugMain.js | 4 ++-- src/debugger.js | 2 +- 3 files changed, 6 insertions(+), 3 deletions(-) diff --git a/package.json b/package.json index 6bed16f..c0f6b1e 100644 --- a/package.json +++ b/package.json @@ -35,6 +35,9 @@ "breakpoints": [ { "language": "java" + }, + { + "language": "kotlin" } ], "debuggers": [ diff --git a/src/debugMain.js b/src/debugMain.js index f7a0b8e..77f51d9 100644 --- a/src/debugMain.js +++ b/src/debugMain.js @@ -479,7 +479,7 @@ class AndroidDebugSession extends DebugSession { package: pkgname, package_path: fpn, srcroot: path.join(app_root,src_folder), - public_classes: subfiles.filter(sf => /^[a-zA-Z_$][a-zA-Z0-9_$]*\.java$/.test(sf)).map(sf => sf.match(/^(.*)\.java$/)[1]) + public_classes: subfiles.filter(sf => /^[a-zA-Z_$][a-zA-Z0-9_$]*\.(?:java|kt)$/.test(sf)).map(sf => sf.match(/^(.*)\.(?:java|kt)$/)[1]) } } // add the subfiles to the list to process @@ -594,7 +594,7 @@ class AndroidDebugSession extends DebugSession { // create a fake pkginfo to use to construct the bp pkginfo = { srcroot:this._android_sources_path } } - if (!pkginfo || !/\.java$/i.test(srcfpn)) { + if (!pkginfo || !/\.(java|kt)$/i.test(srcfpn)) { // source file is not a java file or is outside of the known source packages // just send back a list of unverified breakpoints response.body = { diff --git a/src/debugger.js b/src/debugger.js index e477ad5..f34f897 100644 --- a/src/debugger.js +++ b/src/debugger.js @@ -525,7 +525,7 @@ Debugger.prototype = { }, _splitsrcfpn: function (srcfpn) { - var m = srcfpn.match(/^\/([^/]+(?:\/[^/]+)*)?\/([^./]+)\.java$/); + var m = srcfpn.match(/^\/([^/]+(?:\/[^/]+)*)?\/([^./]+)\.(java|kt)$/); return { pkg: m[1].replace(/\/+/g, '.'), type: m[2],