diff --git a/.github/workflows/mypy.yaml b/.github/workflows/mypy.yaml index df7ca32..865f829 100644 --- a/.github/workflows/mypy.yaml +++ b/.github/workflows/mypy.yaml @@ -24,4 +24,4 @@ jobs: pip install -r requirements.txt - name: Run mypy - run: mypy . + run: mypy src/cpp_fqn_parser diff --git a/README.md b/README.md index 1556643..3be9b05 100644 --- a/README.md +++ b/README.md @@ -27,3 +27,8 @@ Scope(name='one_3hello0', template=None) Scope(name='tconstwo', template='') ``` + +## Installation +```commandline +pip install git+https://github.com/Cliper27/cpp_fqn_parser.git +``` \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml new file mode 100644 index 0000000..87117fc --- /dev/null +++ b/pyproject.toml @@ -0,0 +1,29 @@ +[build-system] +requires = ["setuptools>=61.0"] +build-backend = "setuptools.build_meta" + +[project] +name = "cpp_fqn_parser" +version = "0.1.0" +description = "C++ FQN parser and tokenizer" +readme = "README.md" +license = { file = "LICENSE" } +authors = [{ name="Cliper27" }] +requires-python = ">=3.10" +classifiers = [ + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Programming Language :: Python :: 3.12", + "License :: OSI Approved :: MIT License", + "Operating System :: OS Independent", +] + +[tool.setuptools] +package-dir = {"" = "src"} + +[tool.setuptools.packages.find] +where = ["src"] + +[project.urls] +Homepage = "https://github.com/Cliper27/cpp_fqn_parser" diff --git a/requirements.txt b/requirements.txt index 2285d48..73e7241 100644 Binary files a/requirements.txt and b/requirements.txt differ diff --git a/src/__init__.py b/src/cpp_fqn_parser/__init__.py similarity index 85% rename from src/__init__.py rename to src/cpp_fqn_parser/__init__.py index f0c726e..86caa9a 100644 --- a/src/__init__.py +++ b/src/cpp_fqn_parser/__init__.py @@ -1,5 +1,7 @@ +__version__ = "0.1.0" + from .tokenizer import Tokenizer from .parser import Parser -from .token import Token from .fqn import FQN +from .token import Token from .scope import Scope diff --git a/src/fqn.py b/src/cpp_fqn_parser/fqn.py similarity index 100% rename from src/fqn.py rename to src/cpp_fqn_parser/fqn.py diff --git a/src/parser.py b/src/cpp_fqn_parser/parser.py similarity index 100% rename from src/parser.py rename to src/cpp_fqn_parser/parser.py diff --git a/src/scope.py b/src/cpp_fqn_parser/scope.py similarity index 100% rename from src/scope.py rename to src/cpp_fqn_parser/scope.py diff --git a/src/token.py b/src/cpp_fqn_parser/token.py similarity index 100% rename from src/token.py rename to src/cpp_fqn_parser/token.py diff --git a/src/tokenizer.py b/src/cpp_fqn_parser/tokenizer.py similarity index 100% rename from src/tokenizer.py rename to src/cpp_fqn_parser/tokenizer.py diff --git a/tests/conftest.py b/tests/conftest.py index e3d9b46..aa56fdb 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -2,9 +2,7 @@ import pytest -from src.token import Token -from src.fqn import FQN -from src.scope import Scope +from src.cpp_fqn_parser import Token, FQN, Scope @pytest.fixture diff --git a/tests/test_parser.py b/tests/test_parser.py index c2c92c4..b10bd50 100644 --- a/tests/test_parser.py +++ b/tests/test_parser.py @@ -1,5 +1,4 @@ -from src.parser import Parser -from src.fqn import FQN +from src.cpp_fqn_parser import Parser, FQN def test_simple_fqn(simple_fqn_input: str, simple_parser_expected: FQN) -> None: diff --git a/tests/test_tokenizer.py b/tests/test_tokenizer.py index 54ac3bd..431df04 100644 --- a/tests/test_tokenizer.py +++ b/tests/test_tokenizer.py @@ -1,7 +1,6 @@ from typing import List -from src.tokenizer import Tokenizer -from src.token import Token +from src.cpp_fqn_parser import Tokenizer, Token def test_simple_fqn(simple_fqn_input: str, simple_tokenizer_expected: List[Token]) -> None: