robot-rust 0.2.1

The robot-rust project, bindings for wpilib, ctre, and rev in rust.
#include "chooser_helpers.hpp"
#include <frc/smartdashboard/SendableChooser.h>
#include <frc/smartdashboard/SmartDashboard.h>

namespace chooser {

struct ChooserHandle {
    frc::SendableChooser<std::string> chooser;
};

ChooserHandle* chooser_create() {
    return new ChooserHandle();
}

void chooser_destroy(ChooserHandle *chooser) {
    delete chooser;
}

void chooser_set_default(ChooserHandle *chooser, const std::string name) {
    chooser->chooser.SetDefaultOption(name, name);
}

void chooser_add_option(ChooserHandle *chooser, const std::string name) {
    chooser->chooser.AddOption(name, name);
}

void chooser_publish(ChooserHandle *chooser, const std::string name) {
    frc::SmartDashboard::PutData(name, &chooser->chooser);
}

std::string chooser_get_selected(ChooserHandle *chooser) {
    return chooser->chooser.GetSelected();
}

}