Download .venv/Lib/site-packages/numpy/f2py/tests/src/abstract_interface/foo.f90 from DrDavis/PythonProject1: direct link, hf CLI and curl.
- Browser
- Download file 692 Bytes
-
https://huggingface.co/DrDavis/PythonProject1/resolve/main/.venv/Lib/site-packages/numpy/f2py/tests/src/abstract_interface/foo.f90
- Command line
-
hf download hf://DrDavis/PythonProject1/.venv/Lib/site-packages/numpy/f2py/tests/src/abstract_interface/foo.f90
-
curl -L -o foo.f90 https://huggingface.co/DrDavis/PythonProject1/resolve/main/.venv/Lib/site-packages/numpy/f2py/tests/src/abstract_interface/foo.f90
692 Bytes
| module ops_module | |
| abstract interface | |
| subroutine op(x, y, z) | |
| integer, intent(in) :: x, y | |
| integer, intent(out) :: z | |
| end subroutine | |
| end interface | |
| contains | |
| subroutine foo(x, y, r1, r2) | |
| integer, intent(in) :: x, y | |
| integer, intent(out) :: r1, r2 | |
| procedure (op) add1, add2 | |
| procedure (op), pointer::p | |
| p=>add1 | |
| call p(x, y, r1) | |
| p=>add2 | |
| call p(x, y, r2) | |
| end subroutine | |
| end module | |
| subroutine add1(x, y, z) | |
| integer, intent(in) :: x, y | |
| integer, intent(out) :: z | |
| z = x + y | |
| end subroutine | |
| subroutine add2(x, y, z) | |
| integer, intent(in) :: x, y | |
| integer, intent(out) :: z | |
| z = x + 2 * y | |
| end subroutine | |