Skip to content
Snippets Groups Projects
Commit 2dca4f92 authored by Frederik Hennig's avatar Frederik Hennig
Browse files

remove superfluous interfaces; remove debug lines from coverage

parent b87be486
Branches
Tags
1 merge request!17Improved Source File and Code Structure Modelling
Pipeline #73684 passed
......@@ -59,6 +59,7 @@ parentdir_prefix = "pystencilssfg-"
[tool.coverage.run]
omit = [
"setup.py",
"noxfile.py",
"src/pystencilssfg/_version.py",
"integration/*"
]
......@@ -68,4 +69,5 @@ exclude_also = [
"\\.\\.\\.\n",
"if TYPE_CHECKING:",
"@(abc\\.)?abstractmethod",
"assert False"
]
......@@ -7,10 +7,9 @@ from typing import (
Sequence,
Generator,
)
from dataclasses import replace
from itertools import chain
from pystencils import CreateKernelConfig, create_kernel, Field
from pystencils import Field
from pystencils.codegen import Kernel
from pystencils.types import PsType, PsCustomType
......@@ -164,57 +163,6 @@ class SfgKernelNamespace(SfgNamespace):
)
self._kernels[kernel.name] = kernel
def add(self, kernel: Kernel, name: str | None = None):
"""Adds an existing pystencils AST to this namespace.
If a name is specified, the AST's function name is changed."""
if name is None:
kernel_name = kernel.name
else:
kernel_name = name
if kernel_name in self._kernels:
raise ValueError(
f"Duplicate kernels: A kernel called {kernel_name} already exists in namespace {self.fqname}"
)
if name is not None:
kernel.name = kernel_name
khandle = SfgKernelHandle(kernel_name, self, kernel)
self._kernels[kernel_name] = khandle
# TODO: collect includes later
# for header in kernel.required_headers:
# self._ctx.add_include(
# SfgHeaderInclude(HeaderFile.parse(header), private=True)
# )
return khandle
def create(
self,
assignments,
name: str | None = None,
config: CreateKernelConfig | None = None,
):
"""Creates a new pystencils kernel from a list of assignments and a configuration.
This is a wrapper around `pystencils.create_kernel`
with a subsequent call to `add`.
"""
if config is None:
config = CreateKernelConfig()
if name is not None:
if name in self._kernels:
raise ValueError(
f"Duplicate kernels: A kernel with name {name} already exists in namespace {self.fqname}"
)
config = replace(config, function_name=name)
# type: ignore
kernel = create_kernel(assignments, config=config)
return self.add(kernel)
class SfgFunction(SfgCodeEntity):
"""A free function."""
......
......@@ -2,7 +2,6 @@ from __future__ import annotations
from enum import Enum, auto
from typing import (
Generator,
Iterable,
TypeVar,
Generic,
......@@ -15,7 +14,6 @@ from .entities import (
SfgKernelHandle,
SfgFunction,
SfgClassMember,
SfgMemberVariable,
SfgVisibility,
SfgClass,
)
......@@ -99,14 +97,6 @@ class SfgVisibilityBlock:
def elements(self, elems: Iterable[SfgClassBodyElement]):
self._elements = list(elems)
def members(self) -> Generator[SfgClassMember, None, None]:
for elem in self._elements:
match elem:
case SfgEntityDecl(entity) | SfgEntityDef(entity):
yield entity
case SfgMemberVariable():
yield elem
class SfgNamespaceBlock:
"""A C++ namespace block.
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment