Ignore:
Timestamp:
May 30, 2021, 9:11:40 AM (4 years ago)
Author:
Darin Adler
Message:

Remove WTF::Optional synonym for std::optional, using that class template directly instead
https://bugs.webkit.org/show_bug.cgi?id=226433

Reviewed by Chris Dumez.

Source/JavaScriptCore:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.
  • inspector/scripts/codegen/generate_objc_protocol_types_implementation.py:

(ObjCProtocolTypesImplementationGenerator._generate_init_method_for_payload): Use auto instead
of Optional<>. Also use * instead of value() and nest the definition of the local inside an if
statement in the case where it's an optional.

  • inspector/scripts/tests/expected/*: Regenerated these results.

Source/WebCore:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.

Source/WebCore/PAL:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.

Source/WebDriver:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.

Source/WebKit:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.
  • Scripts/webkit/tests: Regenerated expected results, by running the command "python

Scripts/webkit/messages_unittest.py -r". (How am I supposed to know to do that?)

Source/WebKitLegacy/ios:

  • WebCoreSupport/WebChromeClientIOS.h: Let the do-webcore-rename script rename

Optional<> to std::optional<>.

Source/WebKitLegacy/mac:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.

Source/WebKitLegacy/win:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.

Source/WTF:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.
  • wtf/Optional.h: Remove WTF::Optional.

Tools:

  • <many files>: Let the do-webcore-rename script rename Optional<> to std::optional<>.
Location:
trunk/Source/JavaScriptCore/bytecompiler
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.cpp

    r278185 r278253  
    30123012}
    30133013
    3014 Optional<PrivateNameEnvironment> BytecodeGenerator::getAvailablePrivateAccessNames()
     3014std::optional<PrivateNameEnvironment> BytecodeGenerator::getAvailablePrivateAccessNames()
    30153015{
    30163016    PrivateNameEnvironment result;
     
    32673267
    32683268    auto variablesUnderTDZ = getVariablesUnderTDZ();
    3269     Optional<PrivateNameEnvironment> parentPrivateNameEnvironment = getAvailablePrivateAccessNames();
     3269    std::optional<PrivateNameEnvironment> parentPrivateNameEnvironment = getAvailablePrivateAccessNames();
    32703270    SourceParseMode parseMode = SourceParseMode::ClassFieldInitializerMode;
    32713271    ConstructAbility constructAbility = ConstructAbility::CannotConstruct;
     
    46994699}
    47004700
    4701 void BytecodeGenerator::pushStructureForInScope(RegisterID* localRegister, RegisterID* indexRegister, RegisterID* propertyRegister, RegisterID* enumeratorRegister, Optional<Variable> baseVariable)
     4701void BytecodeGenerator::pushStructureForInScope(RegisterID* localRegister, RegisterID* indexRegister, RegisterID* propertyRegister, RegisterID* enumeratorRegister, std::optional<Variable> baseVariable)
    47024702{
    47034703    if (!localRegister)
  • trunk/Source/JavaScriptCore/bytecompiler/BytecodeGenerator.h

    r277926 r278253  
    311311        using HasOwnPropertyJumpInst = std::tuple<unsigned, unsigned>;
    312312
    313         StructureForInContext(RegisterID* localRegister, RegisterID* indexRegister, RegisterID* propertyRegister, RegisterID* enumeratorRegister, Optional<Variable> baseVariable, unsigned bodyBytecodeStartOffset)
     313        StructureForInContext(RegisterID* localRegister, RegisterID* indexRegister, RegisterID* propertyRegister, RegisterID* enumeratorRegister, std::optional<Variable> baseVariable, unsigned bodyBytecodeStartOffset)
    314314            : ForInContext(localRegister, Type::StructureForIn, bodyBytecodeStartOffset)
    315315            , m_indexRegister(indexRegister)
     
    323323        RegisterID* property() const { return m_propertyRegister.get(); }
    324324        RegisterID* enumerator() const { return m_enumeratorRegister.get(); }
    325         const Optional<Variable>& baseVariable() const { return m_baseVariable; }
     325        const std::optional<Variable>& baseVariable() const { return m_baseVariable; }
    326326
    327327        void addGetInst(unsigned instIndex, int propertyRegIndex)
     
    346346        RefPtr<RegisterID> m_propertyRegister;
    347347        RefPtr<RegisterID> m_enumeratorRegister;
    348         Optional<Variable> m_baseVariable;
     348        std::optional<Variable> m_baseVariable;
    349349        Vector<GetInst> m_getInsts;
    350350        Vector<InInst> m_inInsts;
     
    598598        {
    599599            if (node->isString()) {
    600                 if (Optional<uint32_t> index = parseIndex(static_cast<StringNode*>(node)->value()))
     600                if (std::optional<uint32_t> index = parseIndex(static_cast<StringNode*>(node)->value()))
    601601                    return emitLoad(dst, jsNumber(index.value()));
    602602            }
     
    10571057        void pushIndexedForInScope(RegisterID* local, RegisterID* index);
    10581058        void popIndexedForInScope(RegisterID* local);
    1059         void pushStructureForInScope(RegisterID* local, RegisterID* index, RegisterID* property, RegisterID* enumerator, Optional<Variable> base);
     1059        void pushStructureForInScope(RegisterID* local, RegisterID* index, RegisterID* property, RegisterID* enumerator, std::optional<Variable> base);
    10601060        void popStructureForInScope(RegisterID* local);
    10611061
     
    12101210
    12111211            auto optionalVariablesUnderTDZ = getVariablesUnderTDZ();
    1212             Optional<PrivateNameEnvironment> parentPrivateNameEnvironment = getAvailablePrivateAccessNames();
     1212            std::optional<PrivateNameEnvironment> parentPrivateNameEnvironment = getAvailablePrivateAccessNames();
    12131213
    12141214            // FIXME: These flags, ParserModes and propagation to XXXCodeBlocks should be reorganized.
     
    12231223
    12241224        RefPtr<TDZEnvironmentLink> getVariablesUnderTDZ();
    1225         Optional<PrivateNameEnvironment> getAvailablePrivateAccessNames();
     1225        std::optional<PrivateNameEnvironment> getAvailablePrivateAccessNames();
    12261226
    12271227        RegisterID* emitConstructVarargs(RegisterID* dst, RegisterID* func, RegisterID* thisRegister, RegisterID* arguments, RegisterID* firstFreeRegister, int32_t firstVarArgOffset, const JSTextPosition& divot, const JSTextPosition& divotStart, const JSTextPosition& divotEnd, DebuggableCall);
     
    12981298        Vector<TDZStackEntry> m_TDZStack;
    12991299        Vector<PrivateNameEnvironment> m_privateNamesStack;
    1300         Optional<size_t> m_varScopeLexicalScopeStackIndex;
     1300        std::optional<size_t> m_varScopeLexicalScopeStackIndex;
    13011301        void pushTDZVariables(const VariableEnvironment&, TDZCheckOptimization, TDZRequirement);
    13021302
  • trunk/Source/JavaScriptCore/bytecompiler/NodesCodegen.cpp

    r278244 r278253  
    860860    if (const auto* identifier = node.name()) {
    861861        ASSERT(!propertyName);
    862         Optional<uint32_t> optionalIndex = parseIndex(*identifier);
     862        std::optional<uint32_t> optionalIndex = parseIndex(*identifier);
    863863        if (!optionalIndex) {
    864864            generator.emitDirectPutById(newObj, *identifier, value.get());
     
    30193019
    30203020    if (opcodeID == op_less || opcodeID == op_lesseq || opcodeID == op_greater || opcodeID == op_greatereq) {
    3021         auto isUInt32 = [&] (ExpressionNode* node) -> Optional<UInt32Result> {
     3021        auto isUInt32 = [&] (ExpressionNode* node) -> std::optional<UInt32Result> {
    30223022            if (node->isBinaryOpNode() && static_cast<BinaryOpNode*>(node)->opcodeID() == op_urshift)
    30233023                return UInt32Result::UInt32;
     
    41954195    RefPtr<RegisterID> enumeratorIndex;
    41964196
    4197     Optional<Variable> baseVariable;
     4197    std::optional<Variable> baseVariable;
    41984198    if (m_expr->isResolveNode())
    41994199        baseVariable = generator.variable(static_cast<ResolveNode*>(m_expr)->identifier());
     
    47394739    RefPtr<Label> finallyLabel;
    47404740    RefPtr<Label> finallyEndLabel;
    4741     Optional<FinallyContext> finallyContext;
     4741    std::optional<FinallyContext> finallyContext;
    47424742
    47434743    if (m_finallyBlock) {
     
    55435543        RefPtr<RegisterID> newObject;
    55445544        IdentifierSet excludedSet;
    5545         Optional<CallArguments> args;
     5545        std::optional<CallArguments> args;
    55465546        unsigned numberOfComputedProperties = 0;
    55475547        unsigned indexInArguments = 2;
     
    55965596
    55975597                if (!target.propertyExpression) {
    5598                     Optional<uint32_t> optionalIndex = parseIndex(target.propertyName);
     5598                    std::optional<uint32_t> optionalIndex = parseIndex(target.propertyName);
    55995599                    if (!optionalIndex)
    56005600                        generator.emitGetById(temp.get(), rhs, target.propertyName);
Note: See TracChangeset for help on using the changeset viewer.