mirror of
https://github.com/simonbrunel/qtpromise.git
synced 2024-12-05 09:22:01 +08:00
Compare commits
3 Commits
627e55a2af
...
b7cb05a3f7
Author | SHA1 | Date | |
---|---|---|---|
|
b7cb05a3f7 | ||
|
1a905cbd4f | ||
|
14031392ac |
43
.github/workflows/ci.yaml
vendored
Normal file
43
.github/workflows/ci.yaml
vendored
Normal file
@ -0,0 +1,43 @@
|
|||||||
|
# https://docs.github.com/actions/reference/workflow-syntax-for-github-actions
|
||||||
|
# https://doc.qt.io/qt-6/supported-platforms.html
|
||||||
|
# https://ddalcino.github.io/aqt-list-server/
|
||||||
|
|
||||||
|
name: CI
|
||||||
|
|
||||||
|
on: [push, pull_request]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
test:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
strategy:
|
||||||
|
matrix:
|
||||||
|
qt:
|
||||||
|
- 5.9.9
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v4
|
||||||
|
- uses: jurplel/install-qt-action@v4
|
||||||
|
with:
|
||||||
|
version: ${{ matrix.qt }}
|
||||||
|
archives: qtbase icu
|
||||||
|
tools: tools_cmake
|
||||||
|
arch: gcc_64
|
||||||
|
host: linux
|
||||||
|
- run: |
|
||||||
|
qmake --version
|
||||||
|
cmake --version
|
||||||
|
gcc --version
|
||||||
|
g++ --version
|
||||||
|
- run: |
|
||||||
|
cmake -G "Unix Makefiles"
|
||||||
|
cmake --build . -- -j12
|
||||||
|
cmake --build . --target test
|
||||||
|
- run: |
|
||||||
|
sudo apt-get install lcov > /dev/null
|
||||||
|
lcov --version
|
||||||
|
lcov --capture --directory . -o coverage.info
|
||||||
|
lcov -e coverage.info '**/src/**/*' -o coverage.info
|
||||||
|
- uses: codecov/codecov-action@v3
|
||||||
|
env:
|
||||||
|
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }}
|
||||||
|
with:
|
||||||
|
files: coverage.info
|
38
.travis.yml
38
.travis.yml
@ -1,38 +0,0 @@
|
|||||||
sudo: required
|
|
||||||
dist: xenial
|
|
||||||
language: cpp
|
|
||||||
compiler: gcc
|
|
||||||
|
|
||||||
before_install:
|
|
||||||
- sudo add-apt-repository -y ppa:ubuntu-toolchain-r/test
|
|
||||||
- sudo add-apt-repository -y ppa:beineri/opt-qt563-xenial
|
|
||||||
- sudo apt-get update -qq
|
|
||||||
|
|
||||||
install:
|
|
||||||
- sudo apt-get install -qq gcc-4.9 g++-4.9
|
|
||||||
- sudo update-alternatives --install /usr/bin/gcc gcc /usr/bin/gcc-4.9 90
|
|
||||||
- sudo update-alternatives --install /usr/bin/g++ g++ /usr/bin/g++-4.9 90
|
|
||||||
- sudo update-alternatives --install /usr/bin/gcov gcov /usr/bin/gcov-4.9 90
|
|
||||||
- sudo apt-get install -qq qt56base
|
|
||||||
- source /opt/qt56/bin/qt56-env.sh
|
|
||||||
- wget http://archive.ubuntu.com/ubuntu/pool/universe/l/lcov/lcov_1.13.orig.tar.gz
|
|
||||||
- tar xf lcov_1.13.orig.tar.gz
|
|
||||||
- cd lcov-1.13/
|
|
||||||
- sudo make install
|
|
||||||
- cd ..
|
|
||||||
|
|
||||||
before_script:
|
|
||||||
- cmake --version
|
|
||||||
- qmake --version
|
|
||||||
- gcc --version && g++ --version
|
|
||||||
- lcov --version && gcov --version
|
|
||||||
|
|
||||||
script:
|
|
||||||
- cmake -G "Unix Makefiles"
|
|
||||||
- cmake --build . -- -j12
|
|
||||||
- cmake --build . --target test
|
|
||||||
- lcov -capture --directory . --o coverage.info
|
|
||||||
- lcov -e coverage.info '**/src/**/*' -o coverage.info
|
|
||||||
|
|
||||||
after_success:
|
|
||||||
- bash <(curl -s https://codecov.io/bash) -f coverage.info
|
|
@ -20,6 +20,8 @@
|
|||||||
#include <QtCore/QVariant>
|
#include <QtCore/QVariant>
|
||||||
#include <QtCore/QVector>
|
#include <QtCore/QVector>
|
||||||
|
|
||||||
|
#include <memory>
|
||||||
|
|
||||||
namespace QtPromise {
|
namespace QtPromise {
|
||||||
|
|
||||||
template<typename T>
|
template<typename T>
|
||||||
@ -92,13 +94,13 @@ class PromiseValue
|
|||||||
{
|
{
|
||||||
public:
|
public:
|
||||||
PromiseValue() { }
|
PromiseValue() { }
|
||||||
PromiseValue(const T& data) : m_data(QSharedPointer<T>::create(data)) { }
|
PromiseValue(const T& data) : m_data(std::make_shared<T>(data)) { }
|
||||||
PromiseValue(T&& data) : m_data(QSharedPointer<T>::create(std::forward<T>(data))) { }
|
PromiseValue(T&& data) : m_data(std::make_shared<T>(std::forward<T>(data))) { }
|
||||||
bool isNull() const { return m_data.isNull(); }
|
bool isNull() const { return m_data == nullptr; }
|
||||||
const T& data() const { return *m_data; }
|
const T& data() const { return *m_data; }
|
||||||
|
|
||||||
private:
|
private:
|
||||||
QSharedPointer<T> m_data;
|
std::shared_ptr<T> m_data;
|
||||||
};
|
};
|
||||||
|
|
||||||
class PromiseError
|
class PromiseError
|
||||||
|
Loading…
Reference in New Issue
Block a user