All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.javascript.jscomp.ControlFlowAnalysis.class Maven / Gradle / Ivy

Go to download

Closure Compiler is a JavaScript optimizing compiler. It parses your JavaScript, analyzes it, removes dead code and rewrites and minimizes what's left. It also checks syntax, variable references, and types, and warns about common JavaScript pitfalls. It is used in many of Google's JavaScript apps, including Gmail, Google Web Search, Google Maps, and Google Docs.

The newest version!
????7z
java/lang/Object()V	

applyAsIntV(Lcom/google/javascript/jscomp/ControlFlowAnalysis;)Ljava/util/function/ToIntFunction;
java/util/ComparatorcomparingInt:(Ljava/util/function/ToIntFunction;)Ljava/util/Comparator;	0com/google/javascript/jscomp/ControlFlowAnalysispriorityComparatorLjava/util/Comparator;java/util/ArrayDeque
	exceptionHandlerLjava/util/Deque;
 !"#&com/google/common/collect/HashMultimapcreate*()Lcom/google/common/collect/HashMultimap;	%&'
finallyMap'Lcom/google/common/collect/SetMultimap;	)*+compiler/Lcom/google/javascript/jscomp/AbstractCompiler;	-./shouldTraverseFunctionsZ	12/edgeAnnotations48com/google/javascript/jscomp/ControlFlowAnalysis$Builder
3	789cfg/Lcom/google/javascript/jscomp/ControlFlowGraph;
;<=>?%com/google/javascript/jscomp/NodeUtilisValidCfgRoot%(Lcom/google/javascript/rhino/Node;)ZA%Unexpected control flow graph root %s
CDEFG$com/google/common/base/Preconditions
checkArgument((ZLjava/lang/String;Ljava/lang/Object;)V	IJKroot"Lcom/google/javascript/rhino/Node;M7com/google/javascript/jscomp/base/LinkedIdentityHashMap
L	PQRastPosition9Lcom/google/javascript/jscomp/base/LinkedIdentityHashMap;	TUVastPositionCounterIXDcom/google/javascript/jscomp/ControlFlowAnalysis$AstControlFlowGraph
Z[\computeFallThroughF(Lcom/google/javascript/rhino/Node;)Lcom/google/javascript/rhino/Node;
W^_&(Lcom/google/javascript/rhino/Node;Z)V
abcde*com/google/javascript/jscomp/NodeTraversaltraverse?(Lcom/google/javascript/jscomp/AbstractCompiler;Lcom/google/javascript/rhino/Node;Lcom/google/javascript/jscomp/NodeTraversal$Callback;)V
ghijkjava/lang/IntegervalueOf(I)Ljava/lang/Integer;
Lmnoput8(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;	qrVpriorityCounter
tuvwx-com/google/javascript/jscomp/ControlFlowGraphgetEntry:()Lcom/google/javascript/jscomp/graph/DiGraph$DiGraphNode;
z{|prioritizeFromEntryNode;(Lcom/google/javascript/jscomp/graph/DiGraph$DiGraphNode;)V
t~?getNodes()Ljava/util/Collection;?????java/util/Collectioniterator()Ljava/util/Iterator;?????java/util/IteratorhasNext()Z????next()Ljava/lang/Object;?6com/google/javascript/jscomp/graph/DiGraph$DiGraphNode????getValue? com/google/javascript/rhino/Node
????
isFunction????hasPriority????setPriority(I)V
t??xgetImplicitReturn?java/util/PriorityQueue
???(ILjava/util/Comparator;)V
????add(Ljava/lang/Object;)Z
????isEmpty
????remove
t???getDirectedSuccNodesJ(Lcom/google/javascript/jscomp/graph/DiGraph$DiGraphNode;)Ljava/util/List;
????addAll(Ljava/util/Collection;)Z
???shouldTraverseIntoChildrenG(Lcom/google/javascript/rhino/Node;Lcom/google/javascript/rhino/Node;)Z	?????2com/google/javascript/jscomp/ControlFlowAnalysis$1,$SwitchMap$com$google$javascript$rhino$Token[I
????getToken%()Lcom/google/javascript/rhino/Token;
?????!com/google/javascript/rhino/Tokenordinal()I?????java/util/Dequepush(Ljava/lang/Object;)V
????getLastChild$()Lcom/google/javascript/rhino/Node;
????getSecondChild
????
getFirstChild
;???
hasFinally
;??\
getCatchBlock
;???isTryFinallyNode????peek
C???
checkState(Z)V????pop
????	hasParent
????	getParent
????isArrowFunction
????isBlock
handleIf%(Lcom/google/javascript/rhino/Node;)V
handleWhile
handleDo

	handleFor

handleEnhancedFor
handleSwitch

handleCase

handleDefault
handleStmtList
handleFunction
 
handleExpr
"#handleThrow
%&	handleTry
()handleCatch
+,handleBreak
./handleContinue
12handleReturn
45
handleWith
78
handleStmt
?:;?getNext	=>?@A4com/google/javascript/jscomp/ControlFlowGraph$BranchON_TRUE6Lcom/google/javascript/jscomp/ControlFlowGraph$Branch;
CDE
createEdge}(Lcom/google/javascript/rhino/Node;Lcom/google/javascript/jscomp/ControlFlowGraph$Branch;Lcom/google/javascript/rhino/Node;)V	=GHAON_FALSE
JKLcomputeFollowNodex(Lcom/google/javascript/rhino/Node;Lcom/google/javascript/jscomp/ControlFlowAnalysis;)Lcom/google/javascript/rhino/Node;
;NO\getConditionExpression
QRS!connectToPossibleExceptionHandlerG(Lcom/google/javascript/rhino/Node;Lcom/google/javascript/rhino/Node;)V
?UV?isTrue	=XYAUNCOND
??	?\]^CASE#Lcom/google/javascript/rhino/Token;	?`a^EMPTY
cdegetNextSiblingOfTypej(Lcom/google/javascript/rhino/Node;[Lcom/google/javascript/rhino/Token;)Lcom/google/javascript/rhino/Node;
?gh?isCase	?jk^DEFAULT_CASE
?mn?isTry
;pq?hasCatchHandler
?st?isRoot
?vw?isSyntheticBlock	=yzA	SYN_BLOCK
?|}~hasXChildren(I)Z
????hasChildren
????	getString()Ljava/lang/String;
???
isBreakTarget7(Lcom/google/javascript/rhino/Node;Ljava/lang/String;)Z???n?%com/google/common/collect/SetMultimap'(Ljava/lang/Object;Ljava/lang/Object;)Z
?????-com/google/javascript/jscomp/AbstractCompiler
getOptions0()Lcom/google/javascript/jscomp/CompilerOptions;
?????,com/google/javascript/jscomp/CompilerOptionscanContinueAfterErrors?java/lang/IllegalStateException?Cannot find break target.
???(Ljava/lang/String;)V
???isContinueTarget?Cannot find continue target.
C???(ZLjava/lang/Object;)V
????isVanillaFor
????getChildAtIndex%(I)Lcom/google/javascript/rhino/Node;??
?K??(Lcom/google/javascript/rhino/Node;Lcom/google/javascript/rhino/Node;Lcom/google/javascript/jscomp/ControlFlowAnalysis;)Lcom/google/javascript/rhino/Node;
????
isDefaultCase?
Not reachable????get#(Ljava/lang/Object;)Ljava/util/Set;???
java/util/Set	=??AON_EX
t???
createNode^(Ljava/lang/Object;)Lcom/google/javascript/jscomp/graph/LinkedDirectedGraph$LinkedDiGraphNode;
t???connectIfNotFound9(Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
???mayThrowException??
????getAncestors5()Lcom/google/javascript/rhino/Node$AncestorIterable;
???1com/google/javascript/rhino/Node$AncestorIterable
???isBreakStructure&(Lcom/google/javascript/rhino/Node;Z)Z
???
matchLabel
;???isLoopStructure
????isLabel
?????java/lang/Stringequals
t???isEnteringNewCfgNode
????isScript
??\getCatchHandlerForBlock
L???&(Ljava/lang/Object;)Ljava/lang/Object;
C??ocheckNotNull
g???intValue?3com/google/javascript/jscomp/NodeTraversal$Callback	SignatureSLcom/google/javascript/jscomp/ControlFlowGraph;pLcom/google/javascript/jscomp/base/LinkedIdentityHashMap;RuntimeVisibleTypeAnnotations#Lorg/jspecify/annotations/Nullable;?Ljava/util/Comparator;>;5Ljava/util/Deque;mLcom/google/common/collect/SetMultimap;4(Lcom/google/javascript/jscomp/AbstractCompiler;ZZ)VCodeLineNumberTableLocalVariableTablethis2Lcom/google/javascript/jscomp/ControlFlowAnalysis;MethodParametersbuilder<()Lcom/google/javascript/jscomp/ControlFlowAnalysis$Builder;getCfg1()Lcom/google/javascript/jscomp/ControlFlowGraph;U()Lcom/google/javascript/jscomp/ControlFlowGraph;
computeCfgvalue	candidate8Lcom/google/javascript/jscomp/graph/DiGraph$DiGraphNode;entryLocalVariableTypeTable?Lcom/google/javascript/jscomp/graph/DiGraph$DiGraphNode;
StackMapTablecurrent
successorsLjava/util/List;worklistLjava/util/PriorityQueue;?Ljava/util/List<+Lcom/google/javascript/jscomp/graph/DiGraph$DiGraphNode;>;?Ljava/util/PriorityQueue;>;?(Lcom/google/javascript/jscomp/graph/DiGraph$DiGraphNode;)VshouldTraverses(Lcom/google/javascript/jscomp/NodeTraversal;Lcom/google/javascript/rhino/Node;Lcom/google/javascript/rhino/Node;)Z
nodeTraversal,Lcom/google/javascript/jscomp/NodeTraversal;nparentshouldTraverseForChildvisits(Lcom/google/javascript/jscomp/NodeTraversal;Lcom/google/javascript/rhino/Node;Lcom/google/javascript/rhino/Node;)Vtnode	thenBlock	elseBlockcondbodyforNodeitem
collectioninititerdefltchildlabelLjava/lang/String;curpreviouslastJump
curHandlercfafinallyNodefromNodenextSiblingbranchtoNodeancestor
catchBlocklastJumpInCatchBlockhandlercfgNodetargettypecfirsttypes$[Lcom/google/javascript/rhino/Token;LlabeledgetExceptionHandler	catchNodesblocklambda$new$0;(Lcom/google/javascript/jscomp/graph/DiGraph$DiGraphNode;)IdigraphNode
SourceFileControlFlowAnalysis.javaNestMembersBootstrapMethods[
\]^_`"java/lang/invoke/LambdaMetafactorymetafactory?(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;b(Ljava/lang/Object;)Id
eSTTInnerClassesBuilderAstControlFlowGraphCallbackl*com/google/javascript/jscomp/graph/DiGraphDiGraphNodeBranchpHcom/google/javascript/jscomp/graph/LinkedDirectedGraph$LinkedDiGraphNoder6com/google/javascript/jscomp/graph/LinkedDirectedGraphLinkedDiGraphNodeAncestorIterablev%java/lang/invoke/MethodHandles$Lookupxjava/lang/invoke/MethodHandlesLookup1?*+89??QR????UVrV./2/JK?&'?*?3*?**???*?Y??*??$*+?(*?,*?0?&	?JK_~#?(?-?2?*3	3*+3./32/

*.2	 ?3Y?5??
/*?6??	?+?:@+?B*+?H*?LY?N?O*?S*?WY+?Y*?0?]?6*?(+*?`*?O*Y?S`Z?S?f?lW*?p*?6?sM*,?y*?,?F*?6?}??N-???0-????:????:????	*?y???*?O*?6?}??N-???--????:???*Y?p`Z?p?????*?6??*Y?p`Z?p???f???
????2?;?R?W?_?d?k?????????????????????
?>?K??	JK_? ??_??x??2???/?
J{|U??Y
*???M,+??W,???<,????N-??????-*Y?p`Z?p??*?6-??:,??W??ñ.????#?,?/?@JQT4#.JU	UG*#.JUG?????$
? !?$*,-???*?O,*Y?SZ`?S?f?lW??	 "*$	$"#$$K$%K"

"$%??????+?ƶ?.?J>*?,?+*?6?s???*?+????*?+???,?Q??,?ƶ?.?)?????????????????????????????+,?֦?>?*?O+*Y?SZ`?S?f?lW?+,?ڥ??+,?ݥ??+,?֦??*?,?+,?֦???,???+,??,+??%*???,????*???W?,??,?????,?????f$;EGIS U5Y6?<?=?@BF!P/R=TRcTjekkl?m?t?u?x*?&/?	?$K?%K,$??@??@@@@@
	$%'(??,?ƶ?.?#???????????????????????*,???*,??*,??*,?	?*,??*,??*,??*,??*,??*,??*,??*,?!?*,?$?*,?'?*,?*?*,?-?*,?0?*,?3??*,?6??(}???????????????????????????????????????????????????????????????	?
?????*	)#$K%K??

)$%?@+??M,?9N*+?<,?Y?B-?*+?F+*?I?B?*+?F-?Y?B*++?M?P?"??
???*?6???*@	@*K;+K
6,K?*??
*?2+??M*+?<,?9?Y?B,?T?*+?F+*?I?B*++?M?P?????(?1? 2	2*K--K?(?
*?4+??M*+?<,?Y?B,?9N-?T?*+?F+*?I?B*++?M?P??????*?3?*4	4*K/.K-K?*??
*?:+??M,?9N-?9:*-?W+?B*+?<?Y?B*+?F+*?I?B*+-?P?"??
???&?3?9?4:	:/K50K
01K*.K
/g+??M,?9N-?9:?9:*,?W+?B*+?<?Y?B-?Z?-?T?*+?F+*?I?B*?W+?B*,,?P*+-?P*?P?6
??
? -;HRX^f>g	g/Kb2K
]-KW3KP.K?H?????
/?U+????Y?[SY?_S?bM,?*+?W,?B?&+???*+?W+?ڶB?*+?W+*?I?B*++?ݶP?"(/>K!T" U	U*K=?K
?(?
*v*+?<+?ڶB+?9??Y?[S?bM,?,?f??*+?F,?B?:+??N-????Y?iS?b:?*+?F?B?*+?F+*?I?B*++?ݶP?2&)*"+),5.:/M0R1_3l6u74:2%KM4Kv	v*KX?K?5??)???
*E
*+?W+?ݶB?
;<
	
*K
*5R*+?W+?ֶB*++?ݶP?@AB	*K
*?+??M+???,?l?,??+?+?o??+??N-?-???-?9N???-?*+?W-?Y?B?*+?W+*?I?B,?s??,?ƶ?.?J*** -?;+?r?4+?9?-*+?W+?9?B?+???+?u?*+?x+*?I?B?REG
HIJ"K#O(S3T;W?XNZ[^__?c?f?g?k?l?q*?	?*K?%K(?5K	?#???8
*?>+????+?{??*+?W+?ָY?B*???+????*???W?uvwx3y=z>	>*K/@
* P*+?W+*?I?B*++?P?}
~	*K
*#?*++?P?
??	*K
*&E
*+?W+?ݶB?
??
	
*K
*)E
*+?W+?ֶB?
??
	
*K
*,??M+??+?ݶ?M:+??:+N+:-,???w-?l?B-???;-???2+?*?W-?ָY?B?*?$-?ָY??W-:?*?(????????Y????-:N??:???+?*?W-*?I?B?*?$-*?I??W?Z??	?????'?>?D?W?j?m?r????????????????H?	?*K?67?8K?9K?:K?%K,
???
??????7

*/??M+??+?ݶ?M:+N+:-,???[-?l??-???8-???/+?*?W-?ֶB?*?$-?ָY??W-:-?????-:-??N???-:-???
-??:+?*+?W?B?*?$??W?R??	???!?8?>?N?a?d?n?q?y?|???????????H?	?*K?67?8K?9K?:K|03K 	??????4??

*23?M*???N-???N-????:????8???-,?*+?W?ֶB?*?$,?ָY??WM???+??*++?ݶP,?*+?W?B?*?$,??W?B?? ?(?+?3?7?G?Z?]?`?g?p?t?????* =;K?	?*K?:K	???????
*8P*+?W+*?I?B*++?P??
??	*K
*KL;**+???*K<	
	*<K\1**???*K
*
K???+??N-?-???,?
+,?H????-?ƶ?.?V????????VV?VVVVVVVVVVVVVVVVV?*-,???-?9?2-?9?f?-?9?ڰ-?9???-?9?ݰ??Y????*-,???-?-?ڶ9?-?-??+?-???-?ָY?*-,???-??+?-???+?9?Y?*-,???-??+?B,?7,?$-????:???????:,*???B???*-,???+?9:????
?9:????	?Y?*-,????#%&'+?.?3?4?5?6?7?9?<?A?C?F?IJKMP"Q)R1T8W@XDYkZu[x]f?i?j?m?n?q>k
=K?>K?*K?<	?%K?)?K*????
???"??


>*<?[\?_??*?ƶ?.?R=EEE=RRRRRRJ*?ݸY?*?ڰ*?ָY?*?zH}P?U?]?_$K?H
$DEq*?6+??W*?6-??W*?6+,-?DZ?	???*	>K@AAK

>@A?	RS?
?,?˙?*?????+N*???:????????:?????l????:6-?϶?:???)????:		??	?	6?????o??+-+?*+???ֶB?3*?$-?ֹ?W? -+?*+???B?*?$-??WN??A?j???6?>???G?N?Q?p?w?z?????????????????????????????RpBK	N?CKQ?D/6?EK?:K?	?FK?GK<? ??????????????
	FG?de?7*M,?2+N-?66?-2:,???,?????,?9M???????%?'?-?5?*H^3IK7JK7KL???M??
	JK?	??u!*+???֙*??+?ڙ???!GK!67I?????@
	G6??W*?ݙ*??+?ڙ???GK67@
	G6
??~'+??*???*?ݶ?+???*??K???????
???%?'GK'67
	G6	??b???*?ƶ?.??/?????????????????????????????????????????????????*??L+?+??+?˙?+?9L????"?????????	?IK?$K?????
$??????*?ƶ?.?? ??????????????????????????????????????$K?N/??
	$NO\?%*L+??+???+??M,?,?+??L????'()*'#- PK!8K%$K???
$??\?;*???5*???l?+*????*? *?9L+?+?o?+?ݰ+?9L????"6789%:,;199?!QK;RK?!??
R?STW#*?O+???????g+?????g???M#	#UVWX?W3YZacfgJ	3hWi?aj	?km	?=tn@oqs	??tuwy




© 2015 - 2024 Weber Informatics LLC | Privacy Policy