QtBase - 2016-12-13 07:58:44 +0000

Function Tree

Page:<>1
eLOC - Effective Lines of Code: 0
...10
eLOC - Effective Lines of Code: 1
...20
eLOC - Effective Lines of Code: 4
...30
eLOC - Effective Lines of Code: 10
...38
eLOC - Effective Lines of Code: 20
39
eLOC - Effective Lines of Code: 22
40
eLOC - Effective Lines of Code: 25
41
eLOC - Effective Lines of Code: 28
4243
eLOC - Effective Lines of Code: 36
44
eLOC - Effective Lines of Code: 40
45
eLOC - Effective Lines of Code: 45
46
eLOC - Effective Lines of Code: 53
...50
eLOC - Effective Lines of Code: 101
...55
eLOC - Effective Lines of Code: 533
FunctionCondition %eLOC - Effective Lines of Codeā–“McCabe - Cyclomatic Complexity
QAccessibleDockWidget
Name: QAccessibleDockWidget
Coverage:  0.000% (0/48)
  0.000% (0/48)
3218
QDBusError
Name: QDBusError
Coverage:  66.667% (16/24)
 66.667% (16/24)
3215
QDBusServer
Name: QDBusServer
Coverage:  46.429% (13/28)
 46.429% (13/28)
3216
QEasingCurvePrivate
Name: QEasingCurvePrivate
Coverage:  90.000% (27/30)
 90.000% (27/30)
3210
QFileDevicePrivate
Name: QFileDevicePrivate
Coverage:  39.394% (13/33)
 39.394% (13/33)
3214
QFileSelectorPrivate
Name: QFileSelectorPrivate
Coverage:  72.000% (18/25)
 72.000% (18/25)
3213
QProcessEnvironmentPrivate
Name: QProcessEnvironmentPrivate
Coverage:  90.909% (20/22)
 90.909% (20/22)
3210
QStatePrivate
Name: QStatePrivate
Coverage: 100.000% (32/32)
100.000% (32/32)
3214
QSubpathFlatIterator
Name: QSubpathFlatIterator
Coverage:  0.000% (0/12)
  0.000% (0/12)
326
QTextTableData
Name: QTextTableData
Coverage:  0.000% (0/19)
  0.000% (0/19)
3213
QThreadPipe
Name: QThreadPipe
Coverage:  0.000% (0/42)
  0.000% (0/42)
3217
QWidgetAnimator
Name: QWidgetAnimator
Coverage:  0.000% (0/34)
  0.000% (0/34)
3210
QWidgetWindowPrivate
Name: QWidgetWindowPrivate
Coverage:  0.000% (0/33)
  0.000% (0/33)
329
collectSingleContour
Name: collectSingleContour
Prototype: static void collectSingleContour(qreal x0, qreal y0, uint *grid, int x, int y, int w, int h, QPainterPath *path)
Coverage:  0.000% (0/28)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/text/qfontengine.cpp
Lines: 695-739
  0.000% (0/28)
3210
cursorIdForShape
Name: cursorIdForShape
Prototype: static int cursorIdForShape(int cshape)
Coverage:  57.576% (19/33)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/plugins/platforms/xcb/qxcbcursor.cpp
Lines: 385-437
 57.576% (19/33)
3218
generateWavyPixmap
Name: generateWavyPixmap
Prototype: static QPixmap generateWavyPixmap(qreal maxRadius, const QPen &pen)
Coverage:  0.000% (0/10)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qpainter.cpp
Lines: 6179-6229
  0.000% (0/10)
324
intersectionPoint
Name: intersectionPoint
Prototype: IntersectionPoint intersectionPoint(const QPoint &u1, const QPoint &u2, const QPoint &v1, const QPoint &v2)
Coverage:  0.000% (0/24)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qpathsimplifier.cpp
Lines: 174-237
  0.000% (0/24)
326
operator<<
Name: operator<<
Prototype: QDebug operator<<(QDebug debug, const QWidget *widget)
Coverage:  0.000% (0/26)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/widgets/kernel/qwidget.cpp
Lines: 13019-13057
  0.000% (0/26)
329
parseShorthandBackgroundProperty
Name: parseShorthandBackgroundProperty
Prototype: static void parseShorthandBackgroundProperty(const QVector<QCss::Value> &values, BrushData *brush, QString *image, Repeat *repeat, Qt::Alignment *alignment, const QPalette &pal)
Coverage:  0.000% (0/31)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/text/qcssparser.cpp
Lines: 993-1037
  0.000% (0/31)
329
qFindByteArray
Name: qFindByteArray
Prototype: int qFindByteArray( const char *haystack0, int haystackLen, int from, const char *needle, int needleLen)
Coverage:  72.973% (27/37)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/corelib/tools/qbytearraymatcher.cpp
Lines: 271-324
 72.973% (27/37)
3211
qIntersectionPoint
Name: qIntersectionPoint
Prototype: static QIntersectionPoint qIntersectionPoint(const QPodPoint &u1, const QPodPoint &u2, const QPodPoint &v1, const QPodPoint &v2)
Coverage:  0.000% (0/24)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/opengl/qtriangulator.cpp
Lines: 250-313
  0.000% (0/24)
326
qt_splitLocaleName
Name: qt_splitLocaleName
Prototype: bool qt_splitLocaleName(const QString &name, QString &lang, QString &script, QString &cntry)
Coverage:  63.889% (23/36)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/corelib/tools/qlocale.cpp
Lines: 405-458
 63.889% (23/36)
3211
read_xbm_body
Name: read_xbm_body
Prototype: static bool read_xbm_body(QIODevice *device, int w, int h, QImage *outImage)
Coverage:  0.000% (0/29)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/image/qxbmhandler.cpp
Lines: 120-172
  0.000% (0/29)
329
read_xbm_header
Name: read_xbm_header
Prototype: static bool read_xbm_header(QIODevice *device, int& w, int& h)
Coverage:  0.000% (0/34)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/image/qxbmhandler.cpp
Lines: 64-118
  0.000% (0/34)
328
QAccessibleTabBar
Name: QAccessibleTabBar
Coverage:  0.000% (0/45)
  0.000% (0/45)
3319
QDockWidgetTitleButton
Name: QDockWidgetTitleButton
Coverage:  0.000% (0/33)
  0.000% (0/33)
3313
QDragManager
Name: QDragManager
Coverage:  0.000% (0/42)
  0.000% (0/42)
3316
QGnomeTheme
Name: QGnomeTheme
Coverage:  0.000% (0/58)
  0.000% (0/58)
3334
QHistoryState
Name: QHistoryState
Coverage:  63.636% (21/33)
 63.636% (21/33)
3316
QItemDelegatePrivate
Name: QItemDelegatePrivate
Coverage:  0.000% (0/30)
  0.000% (0/30)
3319
QJsonParseError
Name: QJsonParseError
Coverage:  0.000% (0/31)
  0.000% (0/31)
3316
QOpenGLFunctions_1_0
Name: QOpenGLFunctions_1_0
Coverage:  0.000% (0/29)
  0.000% (0/29)
3311
QPlatformDrag
Name: QPlatformDrag
Coverage:  0.000% (0/43)
  0.000% (0/43)
3319
QProgressBarPrivate
Name: QProgressBarPrivate
Coverage:  0.000% (0/33)
  0.000% (0/33)
3313
QSqlError
Name: QSqlError
Coverage:  75.000% (18/24)
 75.000% (18/24)
3320
QTcpServerPrivate
Name: QTcpServerPrivate
Coverage:  87.879% (29/33)
 87.879% (29/33)
3314
bezierAtT
Name: bezierAtT
Prototype: static inline QBezier bezierAtT(const QPainterPath &path, qreal t, qreal *startingLength, qreal *bezierLength)
Coverage:  0.000% (0/25)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qpainterpath.cpp
Lines: 2924-2976
  0.000% (0/25)
339
blend_untransformed_generic
Name: blend_untransformed_generic
Prototype: static void blend_untransformed_generic(int count, const QSpan *spans, void *userData)
Coverage:  0.000% (0/28)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qdrawhelper.cpp
Lines: 4134-4177
  0.000% (0/28)
338
convertWithPalette
Name: convertWithPalette
Prototype: static QImage convertWithPalette(const QImage &src, QImage::Format format, const QVector<QRgb> &clut)
Coverage:  0.000% (0/24)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/image/qimage.cpp
Lines: 2070-2119
  0.000% (0/24)
339
fixedXmlName
Name: fixedXmlName
Prototype: static QString fixedXmlName(const QString &_name, bool *ok, bool namespaces = false)
Coverage:  17.073% (7/41)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/xml/dom/qdom.cpp
Lines: 630-679
 17.073% (7/41)
3312
load_glyph_image_to_texture
Name: load_glyph_image_to_texture
Prototype: static void load_glyph_image_to_texture(QOpenGLContext *ctx, QImage &img, GLuint texture, int tx, int ty)
Coverage:  0.000% (0/34)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/opengl/qopengltextureglyphcache.cpp
Lines: 184-252
  0.000% (0/34)
339
operator>>
Name: operator>>
Prototype: QDataStream &operator>>(QDataStream &in, QString &str)
Coverage:  88.462% (23/26)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/corelib/tools/qstring.cpp
Lines: 8720-8767
 88.462% (23/26)
339
qt_alphamapblit_uint32
Name: qt_alphamapblit_uint32
Prototype: static void qt_alphamapblit_uint32(QRasterBuffer *rasterBuffer, int x, int y, quint32 color, const uchar *map, int mapWidth, int mapHeight, int mapStride, const QClipData *clip)
Coverage:  0.000% (0/31)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qdrawhelper.cpp
Lines: 5803-5897
  0.000% (0/31)
3311
qt_get_hex_rgb
Name: qt_get_hex_rgb
Prototype: bool qt_get_hex_rgb(const char *name, QRgb *rgb)
Coverage:  0.000% (0/29)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qcolor_p.cpp
Lines: 76-114
  0.000% (0/29)
338
qt_painterpath_check_crossing
Name: qt_painterpath_check_crossing
Prototype: static bool qt_painterpath_check_crossing(const QPainterPath *path, const QRectF &rect)
Coverage:  0.000% (0/37)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qpainterpath.cpp
Lines: 1988-2039
  0.000% (0/37)
3310
set_text
Name: set_text
Prototype: static void set_text(const QImage &image, png_structp png_ptr, png_infop info_ptr, const QString &description)
Coverage:  0.000% (0/28)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/image/qpnghandler.cpp
Lines: 734-806
  0.000% (0/28)
3310
writingSystemFromScript
Name: writingSystemFromScript
Prototype: static QFontDatabase::WritingSystem writingSystemFromScript(QLocale::Script script)
Coverage:  0.000% (0/64)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/widgets/widgets/qfontcombobox.cpp
Lines: 56-124
  0.000% (0/64)
3333
QAccessibleGroupBox
Name: QAccessibleGroupBox
Coverage:  0.000% (0/34)
  0.000% (0/34)
3419
QConfFile
Name: QConfFile
Coverage:  90.909% (30/33)
 90.909% (30/33)
3415
QDBusMenuConnection
Name: QDBusMenuConnection
Coverage:  8.824% (3/34)
  8.824% (3/34)
3415
QDBusMetaTypeId
Name: QDBusMetaTypeId
Coverage: 100.000% (4/4)
100.000% (4/4)
342
QEventDispatcherGlibPrivate
Name: QEventDispatcherGlibPrivate
Coverage:  81.818% (9/11)
 81.818% (9/11)
344
QFbWindow
Name: QFbWindow
Coverage:  0.000% (0/25)
  0.000% (0/25)
3415
QHostAddressPrivate
Name: QHostAddressPrivate
Coverage: 100.000% (21/21)
100.000% (21/21)
3411
QMimeAllGlobPatterns
Name: QMimeAllGlobPatterns
Coverage:  73.529% (25/34)
 73.529% (25/34)
3414
QPlatformAccessibility
Name: QPlatformAccessibility
Coverage:  0.000% (0/37)
  0.000% (0/37)
3416
QRubberBand
Name: QRubberBand
Coverage:  0.000% (0/24)
  0.000% (0/24)
3415
QSemaphore
Name: QSemaphore
Coverage:  82.143% (23/28)
 82.143% (23/28)
3413
QSessionManager
Name: QSessionManager
Coverage:  0.000% (0/17)
  0.000% (0/17)
3417
QSignalTransition
Name: QSignalTransition
Coverage:  71.429% (15/21)
 71.429% (15/21)
3413
QStatusBarPrivate
Name: QStatusBarPrivate
Coverage:  0.000% (0/45)
  0.000% (0/45)
3415
QTestElementAttribute
Name: QTestElementAttribute
Coverage:  61.538% (8/13)
 61.538% (8/13)
349
convert_Mono_to_X32
Name: convert_Mono_to_X32
Prototype: static void convert_Mono_to_X32(QImageData *dest, const QImageData *src, Qt::ImageConversionFlags)
Coverage:  0.000% (0/22)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/image/qimage_conversions.cpp
Lines: 1766-1805
  0.000% (0/22)
348
convert_generic_inplace
Name: convert_generic_inplace
Prototype: bool convert_generic_inplace(QImageData *data, QImage::Format dst_format, Qt::ImageConversionFlags)
Coverage:  0.000% (0/30)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/image/qimage_conversions.cpp
Lines: 177-227
  0.000% (0/30)
349
convert_indexed8_to_ARGB_inplace
Name: convert_indexed8_to_ARGB_inplace
Prototype: static bool convert_indexed8_to_ARGB_inplace(QImageData *data, Qt::ImageConversionFlags)
Coverage:  0.000% (0/17)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/image/qimage_conversions.cpp
Lines: 823-872
  0.000% (0/17)
346
generateName
Name: generateName
Prototype: static QTtfTable generateName(const QVector<QTtfNameRecord> &name)
Coverage:  0.000% (0/13)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/text/qfontsubset.cpp
Lines: 651-701
  0.000% (0/13)
345
parseMethod
Name: parseMethod
Prototype: static bool parseMethod(QXmlStreamReader &xml, QDBusIntrospection::Method &methodData, QDBusIntrospection::Interface *ifaceData)
Coverage:  68.966% (20/29)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/dbus/qdbusxmlparser.cpp
Lines: 174-228
 68.966% (20/29)
349
qEncodeNtlmv2Response
Name: qEncodeNtlmv2Response
Prototype: static QByteArray qEncodeNtlmv2Response(const QAuthenticatorPrivate *ctx, const QNtlmPhase2Block& ch, QNtlmPhase3Block *phase3)
Coverage:  63.636% (7/11)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/network/kernel/qauthenticator.cpp
Lines: 1243-1312
 63.636% (7/11)
344
qNtlmPhase3
Name: qNtlmPhase3
Prototype: static QByteArray qNtlmPhase3(QAuthenticatorPrivate *ctx, const QByteArray& phase2data)
Coverage:  45.833% (11/24)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/network/kernel/qauthenticator.cpp
Lines: 1376-1438
 45.833% (11/24)
347
qt_graphicsItem_highlightSelected
Name: qt_graphicsItem_highlightSelected
Prototype: static void qt_graphicsItem_highlightSelected( QGraphicsItem *item, QPainter *painter, const QStyleOptionGraphicsItem *option)
Coverage:  0.000% (0/21)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/widgets/graphicsview/qgraphicsitem.cpp
Lines: 7667-7718
  0.000% (0/21)
3410
qt_memfill32
Name: qt_memfill32
Prototype: void qt_memfill32(quint32 *dest, quint32 value, int count)
Coverage:  0.000% (0/40)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qdrawhelper_sse2.cpp
Lines: 240-288
  0.000% (0/40)
3419
qt_qimageScaleAARGBA_down_xy
Name: qt_qimageScaleAARGBA_down_xy
Prototype: static void qt_qimageScaleAARGBA_down_xy(QImageScaleInfo *isi, unsigned int *dest, int dw, int dh, int dow, int sow)
Coverage:  0.000% (0/10)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qimagescale.cpp
Lines: 483-530
  0.000% (0/10)
344
statusCodeFromHttp
Name: statusCodeFromHttp
Prototype: static QNetworkReply::NetworkError statusCodeFromHttp(int httpStatusCode, const QUrl &url)
Coverage:  33.333% (11/33)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/network/access/qhttpthreaddelegate.cpp
Lines: 56-124
 33.333% (11/33)
3416
ControlLabel
Name: ControlLabel
Coverage:  0.000% (0/29)
  0.000% (0/29)
3515
LineBreakHelper
Name: LineBreakHelper
Coverage:  0.000% (0/33)
  0.000% (0/33)
3515
QCUPSSupport
Name: QCUPSSupport
Coverage:  0.000% (0/47)
  0.000% (0/47)
3537
QDialPrivate
Name: QDialPrivate
Coverage:  0.000% (0/32)
  0.000% (0/32)
3511
QEventDispatcherUNIXPrivate
Name: QEventDispatcherUNIXPrivate
Coverage:  0.000% (0/34)
  0.000% (0/34)
3516
QGLCustomShaderStage
Name: QGLCustomShaderStage
Coverage:  0.000% (0/23)
  0.000% (0/23)
3513
QGLTextureCache
Name: QGLTextureCache
Coverage:  18.519% (5/27)
 18.519% (5/27)
3515
QHttpNetworkHeaderPrivate
Name: QHttpNetworkHeaderPrivate
Coverage:  96.154% (25/26)
 96.154% (25/26)
3516
QLineEditIconButton
Name: QLineEditIconButton
Coverage:  0.000% (0/32)
  0.000% (0/32)
3516
QMaxHeap
Name: QMaxHeap
Coverage:  0.000% (0/30)
  0.000% (0/30)
3516
QNetworkReplyDataImpl
Name: QNetworkReplyDataImpl
Coverage:  50.000% (5/10)
 50.000% (5/10)
358
QNetworkRequest
Name: QNetworkRequest
Coverage:  91.429% (32/35)
 91.429% (32/35)
3527
QOpenGLCustomShaderStage
Name: QOpenGLCustomShaderStage
Coverage:  0.000% (0/23)
  0.000% (0/23)
3513
QOpenGLMultiGroupSharedResource
Name: QOpenGLMultiGroupSharedResource
Coverage:  0.000% (0/24)
  0.000% (0/24)
3512
QStringMatcher
Name: QStringMatcher
Coverage:  88.462% (23/26)
 88.462% (23/26)
3516
QToolTip
Name: QToolTip
Coverage:  0.000% (0/41)
  0.000% (0/41)
3519
QUndoView
Name: QUndoView
Coverage:  0.000% (0/20)
  0.000% (0/20)
3514
QWindowContainerPrivate
Name: QWindowContainerPrivate
Coverage:  0.000% (0/38)
  0.000% (0/38)
3514
blend_untransformed_generic_rgb64
Name: blend_untransformed_generic_rgb64
Prototype: static void blend_untransformed_generic_rgb64(int count, const QSpan *spans, void *userData)
Coverage:  0.000% (0/26)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/painting/qdrawhelper.cpp
Lines: 4179-4225
  0.000% (0/26)
358
colorizedImage
Name: colorizedImage
Prototype: static QPixmap colorizedImage(const QString &fileName, const QColor &color, int rotation = 0)
Coverage:  0.000% (0/16)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/widgets/styles/qfusionstyle.cpp
Lines: 188-235
  0.000% (0/16)
356
convertToRelative
Name: convertToRelative
Prototype: static int convertToRelative(QVector<TTF_POINT> *points)
Coverage:  0.000% (0/32)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/gui/text/qfontsubset.cpp
Lines: 859-910
  0.000% (0/32)
358
curveToFunc
Name: curveToFunc
Prototype: static QEasingCurve::EasingFunction curveToFunc(QEasingCurve::Type curve)
Coverage:  97.059% (66/68)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/corelib/tools/qeasingcurve.cpp
Lines: 944-1017
 97.059% (66/68)
3535
makePattern
Name: makePattern
Prototype: static inline QByteArray makePattern(const QByteArray &value)
Coverage:  85.484% (53/62)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/corelib/mimetypes/qmimemagicrule.cpp
Lines: 173-220
 85.484% (53/62)
3514
qDBusPropertyGetAll
Name: qDBusPropertyGetAll
Prototype: QDBusMessage qDBusPropertyGetAll(const QDBusConnectionPrivate::ObjectTreeNode &node, const QDBusMessage &msg)
Coverage:  68.966% (20/29)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/dbus/qdbusinternalfilters.cpp
Lines: 483-531
 68.966% (20/29)
357
qWidgetShortcutContextMatcher
Name: qWidgetShortcutContextMatcher
Prototype: bool qWidgetShortcutContextMatcher(QObject *object, Qt::ShortcutContext context)
Coverage:  0.000% (0/45)
Absolute File Name: /home/qt/qt5_coco/qt5/qtbase/src/widgets/kernel/qshortcut.cpp
Lines: 77-139
  0.000% (0/45)
3515
DrawTextItemRecorder
Name: DrawTextItemRecorder
Coverage:  0.000% (0/19)
  0.000% (0/19)
3611
QAbstractItemDelegate
Name: QAbstractItemDelegate
Coverage:  0.000% (0/34)
  0.000% (0/34)
3616
Page:<>1
eLOC - Effective Lines of Code: 0
...10
eLOC - Effective Lines of Code: 1
...20
eLOC - Effective Lines of Code: 4
...30
eLOC - Effective Lines of Code: 10
...38
eLOC - Effective Lines of Code: 20
39
eLOC - Effective Lines of Code: 22
40
eLOC - Effective Lines of Code: 25
41
eLOC - Effective Lines of Code: 28
4243
eLOC - Effective Lines of Code: 36
44
eLOC - Effective Lines of Code: 40
45
eLOC - Effective Lines of Code: 45
46
eLOC - Effective Lines of Code: 53
...50
eLOC - Effective Lines of Code: 101
...55
eLOC - Effective Lines of Code: 533

Generated by Squish Coco Non-Commercial 4.3.0-BETA-master-30-08-2018-4cb69e9