1254721Semaste//===-- OptionValueArgs.cpp -------------------------------------*- C++ -*-===//
2254721Semaste//
3254721Semaste//                     The LLVM Compiler Infrastructure
4254721Semaste//
5254721Semaste// This file is distributed under the University of Illinois Open Source
6254721Semaste// License. See LICENSE.TXT for details.
7254721Semaste//
8254721Semaste//===----------------------------------------------------------------------===//
9254721Semaste
10254721Semaste#include "lldb/Interpreter/OptionValueArgs.h"
11254721Semaste
12254721Semaste// C Includes
13254721Semaste// C++ Includes
14254721Semaste// Other libraries and framework includes
15254721Semaste// Project includes
16254721Semaste#include "lldb/Interpreter/Args.h"
17254721Semaste
18254721Semasteusing namespace lldb;
19254721Semasteusing namespace lldb_private;
20254721Semaste
21254721Semastesize_t
22254721SemasteOptionValueArgs::GetArgs (Args &args)
23254721Semaste{
24254721Semaste    const uint32_t size = m_values.size();
25254721Semaste    std::vector<const char *> argv;
26254721Semaste    for (uint32_t i = 0; i<size; ++i)
27254721Semaste    {
28254721Semaste        const char *string_value = m_values[i]->GetStringValue ();
29254721Semaste        if (string_value)
30254721Semaste            argv.push_back(string_value);
31254721Semaste    }
32254721Semaste
33254721Semaste    if (argv.empty())
34254721Semaste        args.Clear();
35254721Semaste    else
36254721Semaste        args.SetArguments(argv.size(), &argv[0]);
37254721Semaste    return args.GetArgumentCount();
38254721Semaste}
39