blob: c95ad9c488a07d415b0e98e5ed5a7e25e190003b [file] [log] [blame]
Taylor Brandstetter5d97a9a2016-06-10 14:17:27 -07001/*
2 * Copyright 2016 The WebRTC Project Authors. All rights reserved.
3 *
4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree.
9 */
10
Mirko Bonadei92ea95e2017-09-15 06:47:31 +020011#include "rtc_base/location.h"
Taylor Brandstetter5d97a9a2016-06-10 14:17:27 -070012
Taylor Brandstetter5d97a9a2016-06-10 14:17:27 -070013namespace rtc {
14
15Location::Location(const char* function_name, const char* file_and_line)
16 : function_name_(function_name), file_and_line_(file_and_line) {}
17
18Location::Location() : function_name_("Unknown"), file_and_line_("Unknown") {}
19
20Location::Location(const Location& other)
21 : function_name_(other.function_name_),
22 file_and_line_(other.file_and_line_) {}
23
24Location& Location::operator=(const Location& other) {
25 function_name_ = other.function_name_;
26 file_and_line_ = other.file_and_line_;
27 return *this;
28}
29
30std::string Location::ToString() const {
31 char buf[256];
Niels Mölleraba06332018-10-16 15:14:15 +020032 snprintf(buf, sizeof(buf), "%s@%s", function_name_, file_and_line_);
Taylor Brandstetter5d97a9a2016-06-10 14:17:27 -070033 return buf;
34}
35
36} // namespace rtc