#!/usr/bin/env python
#
# This source file is part of the Swift.org open source project
#
# Copyright (c) 2014 - 2015 Apple Inc. and the Swift project authors
# Licensed under Apache License v2.0 with Runtime Library Exception
#
# See http://swift.org/LICENSE.txt for license information
# See http://swift.org/CONTRIBUTORS.txt for the list of Swift project authors

from simplebuild import *

class CountLinesRule(SimpleAsyncRule):
    def __init__(self, path):
        self.path = str(path)

    def run(self):
        with open(self.path) as file:
            return len(file.readlines())

# Get the input path.
_,path = sys.argv

# Run the job
engine = DataDrivenEngine(globals())
engine.attach_db(".count-lines.db")
result = engine.build(CountLinesRule.asKey(path))
print(result)


