src/jdk.scripting.nashorn/share/classes/jdk/nashorn/internal/runtime/RecompilableScriptFunctionData.java
changeset 58379 8511c662083b
parent 47216 71c04702a3d5
equal deleted inserted replaced
58378:98ea90226198 58379:8511c662083b
     1 /*
     1 /*
     2  * Copyright (c) 2010, 2014, Oracle and/or its affiliates. All rights reserved.
     2  * Copyright (c) 2010, 2019, Oracle and/or its affiliates. All rights reserved.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     3  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
     4  *
     4  *
     5  * This code is free software; you can redistribute it and/or modify it
     5  * This code is free software; you can redistribute it and/or modify it
     6  * under the terms of the GNU General Public License version 2 only, as
     6  * under the terms of the GNU General Public License version 2 only, as
     7  * published by the Free Software Foundation.  Oracle designates this
     7  * published by the Free Software Foundation.  Oracle designates this
   116 
   116 
   117     /**
   117     /**
   118      * Opaque object representing parser state at the end of the function. Used when reparsing outer function
   118      * Opaque object representing parser state at the end of the function. Used when reparsing outer function
   119      * to help with skipping parsing inner functions.
   119      * to help with skipping parsing inner functions.
   120      */
   120      */
       
   121     @SuppressWarnings("serial") // Not statically typed as Serializable
   121     private final Object endParserState;
   122     private final Object endParserState;
   122 
   123 
   123     /** Code installer used for all further recompilation/specialization of this ScriptFunction */
   124     /** Code installer used for all further recompilation/specialization of this ScriptFunction */
   124     private transient CodeInstaller installer;
   125     private transient CodeInstaller installer;
   125 
   126 
       
   127     @SuppressWarnings("serial") // Not statically typed as Serializable
   126     private final Map<Integer, RecompilableScriptFunctionData> nestedFunctions;
   128     private final Map<Integer, RecompilableScriptFunctionData> nestedFunctions;
   127 
   129 
   128     /** Id to parent function if one exists */
   130     /** Id to parent function if one exists */
   129     private RecompilableScriptFunctionData parent;
   131     private RecompilableScriptFunctionData parent;
   130 
   132 
   133 
   135 
   134     private static final MethodHandles.Lookup LOOKUP = MethodHandles.lookup();
   136     private static final MethodHandles.Lookup LOOKUP = MethodHandles.lookup();
   135 
   137 
   136     private transient DebugLogger log;
   138     private transient DebugLogger log;
   137 
   139 
       
   140     @SuppressWarnings("serial") // Not statically typed as Serializable
   138     private final Map<String, Integer> externalScopeDepths;
   141     private final Map<String, Integer> externalScopeDepths;
   139 
   142 
       
   143     @SuppressWarnings("serial") // Not statically typed as Serializable
   140     private final Set<String> internalSymbols;
   144     private final Set<String> internalSymbols;
   141 
   145 
   142     private static final int GET_SET_PREFIX_LENGTH = "*et ".length();
   146     private static final int GET_SET_PREFIX_LENGTH = "*et ".length();
   143 
   147 
   144     private static final long serialVersionUID = 4914839316174633726L;
   148     private static final long serialVersionUID = 4914839316174633726L;