mirror of
https://github.com/facebook/react-native.git
synced 2025-11-01 09:14:26 +00:00
7186a65b13
Summary: This is another step on the journey of removing `enable_shared_from_this`. It's unclear why we used that before but it's clear now that using shared_ptr here is not necessary because all computation around happens inside the single callstack, so by definition we don't have object life-time concerns here. Changelog: [Internal] Small Fabric-specific optimization. Reviewed By: sammy-SC Differential Revision: D17973957 fbshipit-source-id: 09a65c78e22083ed21b041240307f4858379cc60
36 lines
1.0 KiB
C++
36 lines
1.0 KiB
C++
/*
|
|
* Copyright (c) Facebook, Inc. and its affiliates.
|
|
*
|
|
* This source code is licensed under the MIT license found in the
|
|
* LICENSE file in the root directory of this source tree.
|
|
*/
|
|
|
|
#pragma once
|
|
|
|
#include <react/attributedstring/AttributedString.h>
|
|
#include <react/attributedstring/TextAttributes.h>
|
|
|
|
namespace facebook {
|
|
namespace react {
|
|
|
|
/*
|
|
* Base class (one of) for shadow nodes that represents attributed text,
|
|
* such as Text and Paragraph (but not RawText).
|
|
*/
|
|
class BaseTextShadowNode {
|
|
public:
|
|
/*
|
|
* Returns a `AttributedString` which represents text content of the node.
|
|
* This is static so that both Paragraph (which subclasses BaseText) and
|
|
* TextInput (which does not) can use this.
|
|
* TODO T53299884: decide if this should be moved out and made a static
|
|
* function, or if TextInput should inherit from BaseTextShadowNode.
|
|
*/
|
|
static AttributedString getAttributedString(
|
|
TextAttributes const &baseTextAttributes,
|
|
ShadowNode const &parentNode);
|
|
};
|
|
|
|
} // namespace react
|
|
} // namespace facebook
|