semantic-analyzer 0.4.7

Semantic analyzer library for compilers written in Rust for semantic analysis of programming languages AST
Documentation
on:
  push:
    branches:
      - master
      - develop
  pull_request:

name: Tests
jobs:
  test:
    name: Tests
    runs-on: ${{ matrix.os }}
    strategy:
      matrix:
        os:
          - ubuntu-latest
        rust:
          - nightly

    steps:
      - uses: actions/checkout@v4
        with:
          fetch-depth: 1
      - uses: actions-rs/toolchain@v1
        with:
          profile: minimal
          toolchain: ${{ matrix.rust }}
          override: true
          components: rustfmt, clippy
      - name: Restore cache
        uses: actions/cache/restore@v3
        with:
          path: |
            ~/.cargo/bin/
            ~/.cargo/registry/index/
            ~/.cargo/registry/cache/
            ~/.cargo/git/db/
          key: ${{ runner.os }}-cargo
      - name: Build
        run: cargo build --all-features
      - name: Test
        run: cargo test --all-targets --all-features
#        env:
#          CARGO_INCREMENTAL: '0'
#          RUSTFLAGS: '-Zprofile -Ccodegen-units=1 -Copt-level=0 -Cllvm-args=--inline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Zpanic_abort_tests -Cpanic=abort'
#          RUSTDOCFLAGS: '-Zprofile -Ccodegen-units=1 -Copt-level=0 -Cllvm-args=--inline-threshold=0 -Clink-dead-code -Coverflow-checks=off -Zpanic_abort_tests -Cpanic=abort'
#      - name: Install grcov
#        run: |
#          if [[ ! -f ~/.cargo/bin/grcov ]]; then
#            cargo install grcov
#          fi
      - name: Save cache
        uses: actions/cache/save@v3
        with:
          path: |
            ~/.cargo/bin/
            ~/.cargo/registry/index/
            ~/.cargo/registry/cache/
            ~/.cargo/git/db/
          key: ${{ runner.os }}-cargo
#      - name: Run grcov
#        run: |
#          mkdir ./target/debug/coverage/
#          grcov . -s . -b ./target/debug/ -o ./target/debug/coverage/  --ignore-not-existing --excl-line="grcov-excl-line|#\\[derive\\(|//!|///" --excl-start="grcov-excl-start"  --excl-stop="grcov-excl-end" --ignore="*.cargo/*" --ignore="src/lib.rs" --ignore="tests/*"
#      - name: Upload coverage reports to Codecov
#        uses: codecov/codecov-action@v3
#        env:
#          CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
#        with:
#          directory: ./target/debug/coverage/
#          files: ./target/debug/coverage/lcov
#          verbose: true
#          fail_ci_if_error: true