From: Eric Niebler Date: Sat, 6 Jan 2018 01:31:41 +0000 (-0800) Subject: give EventBase a non-explicit default constructor X-Git-Tag: v2018.01.08.00~3 X-Git-Url: http://plrg.eecs.uci.edu/git/?p=folly.git;a=commitdiff_plain;h=cacdd1d54a32c2740fa9dda4ac83b11d2d398820;ds=sidebyside give EventBase a non-explicit default constructor Summary: Default constructors are strange and often unexpected. Refactor. Reviewed By: yfeldblum Differential Revision: D6667480 fbshipit-source-id: 24c456c46c846c61e28f1a88806d7c36d9192493 --- diff --git a/folly/io/async/EventBase.h b/folly/io/async/EventBase.h index 3399cea2..50d2aef8 100644 --- a/folly/io/async/EventBase.h +++ b/folly/io/async/EventBase.h @@ -1,5 +1,5 @@ /* - * Copyright 2017 Facebook, Inc. + * Copyright 2017-present Facebook, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,7 +13,6 @@ * See the License for the specific language governing permissions and * limitations under the License. */ - #pragma once #include @@ -199,6 +198,13 @@ class EventBase : private boost::noncopyable, Func function_; }; + /** + * Create a new EventBase object. + * + * Same as EventBase(true), which constructs an EventBase that measures time. + */ + EventBase() : EventBase(true) {} + /** * Create a new EventBase object. * @@ -208,7 +214,7 @@ class EventBase : private boost::noncopyable, * that relies on time-measurement, including: * observer, max latency and avg loop time. */ - explicit EventBase(bool enableTimeMeasurement = true); + explicit EventBase(bool enableTimeMeasurement); /** * Create a new EventBase object that will use the specified libevent