1*d37221dcSZachary Turner //===-- CommandOptionValidators.cpp -----------------------------*- C++ -*-===// 2*d37221dcSZachary Turner // 3*d37221dcSZachary Turner // The LLVM Compiler Infrastructure 4*d37221dcSZachary Turner // 5*d37221dcSZachary Turner // This file is distributed under the University of Illinois Open Source 6*d37221dcSZachary Turner // License. See LICENSE.TXT for details. 7*d37221dcSZachary Turner // 8*d37221dcSZachary Turner //===----------------------------------------------------------------------===// 9*d37221dcSZachary Turner 10*d37221dcSZachary Turner #include "lldb/Interpreter/CommandOptionValidators.h" 11*d37221dcSZachary Turner 12*d37221dcSZachary Turner #include "lldb/Interpreter/CommandInterpreter.h" 13*d37221dcSZachary Turner #include "lldb/Target/Platform.h" 14*d37221dcSZachary Turner 15*d37221dcSZachary Turner using namespace lldb; 16*d37221dcSZachary Turner using namespace lldb_private; 17*d37221dcSZachary Turner 18*d37221dcSZachary Turner bool PosixPlatformCommandOptionValidator::IsValid(Platform &platform, const ExecutionContext &target) const 19*d37221dcSZachary Turner { 20*d37221dcSZachary Turner llvm::Triple::OSType os = platform.GetSystemArchitecture().GetTriple().getOS(); 21*d37221dcSZachary Turner switch (os) 22*d37221dcSZachary Turner { 23*d37221dcSZachary Turner // Are there any other platforms that are not POSIX-compatible? 24*d37221dcSZachary Turner case llvm::Triple::Win32: 25*d37221dcSZachary Turner return false; 26*d37221dcSZachary Turner default: 27*d37221dcSZachary Turner return true; 28*d37221dcSZachary Turner } 29*d37221dcSZachary Turner } 30*d37221dcSZachary Turner 31*d37221dcSZachary Turner const char* PosixPlatformCommandOptionValidator::ShortConditionString() const 32*d37221dcSZachary Turner { 33*d37221dcSZachary Turner return "POSIX"; 34*d37221dcSZachary Turner } 35*d37221dcSZachary Turner 36*d37221dcSZachary Turner const char* PosixPlatformCommandOptionValidator::LongConditionString() const 37*d37221dcSZachary Turner { 38*d37221dcSZachary Turner return "Option only valid for POSIX-compliant hosts."; 39*d37221dcSZachary Turner } 40