Files
tauri/examples/state/main.rs
Lucas Fernandes Nogueira 8f71640250 fix: CEF CI (#14953)
* fix: CEF CI

* fmt

* update to rust 1.88, edition 2024

* install x86_64-apple-darwin

* linux clippy

* fix --all-features

* more all-features fixes

* install x86 apple

* fix windows

* fix doc tests

* skip --all-featuress test for android and ios

* more clippy fixes

* install target

* fix build, clippy

* export cef for tests

* pin version

* fix arg
2026-02-18 11:24:11 -03:00

54 lines
1.2 KiB
Rust

// Copyright 2019-2024 Tauri Programme within The Commons Conservancy
// SPDX-License-Identifier: Apache-2.0
// SPDX-License-Identifier: MIT
#![cfg_attr(not(debug_assertions), windows_subsystem = "windows")]
use std::sync::Mutex;
use tauri::State;
struct Counter(Mutex<isize>);
#[tauri::command]
fn increment(counter: State<'_, Counter>) -> isize {
let mut c = counter.0.lock().unwrap();
*c += 1;
*c
}
#[tauri::command]
fn decrement(counter: State<'_, Counter>) -> isize {
let mut c = counter.0.lock().unwrap();
*c -= 1;
*c
}
#[tauri::command]
fn reset(counter: State<'_, Counter>) -> isize {
let mut c = counter.0.lock().unwrap();
*c = 0;
*c
}
#[tauri::command]
fn get(counter: State<'_, Counter>) -> isize {
*counter.0.lock().unwrap()
}
#[cfg_attr(feature = "cef", tauri::cef_entry_point)]
fn main() {
#[cfg(feature = "cef")]
let builder = tauri::Builder::<tauri::Cef>::default();
#[cfg(not(feature = "cef"))]
let builder = tauri::Builder::<tauri::Wry>::new();
builder
.manage(Counter(Mutex::new(0)))
.invoke_handler(tauri::generate_handler![increment, decrement, reset, get])
.run(tauri::generate_context!(
"../../examples/state/tauri.conf.json"
))
.expect("error while running tauri application");
}