getTag static method

String getTag({
  1. int stackIndex = 4,
})

Gets tag with stackIndex, how many steps in stacktrace should be taken to grab log call.

Implementation

static String getTag({int stackIndex = 4}) {
  var stackTraceList = StackTrace.current.toString().split('\n');
  if (stackTraceList.length > stackIndex) {
    var lineChunks =
        stackTraceList[stackIndex].replaceAll("<anonymous closure>", "<ac>");
    if (lineChunks.length > 6) {
      var lineParts = lineChunks.split(' ');
      if (lineParts.length > 8 && lineParts[6] == 'new') {
        // constructor logging
        return "${lineParts[6]} ${lineParts[7]}";
      } else if (lineParts.length > 6) {
        return lineParts[6];
      } else {
        return _defaultTag;
      }
    } else {
      return _defaultTag;
    }
  } else {
    return _defaultTag; //default
  }
}