35 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
		
			2.4 KiB
		
	
	
	
		
			Java
		
	
	
	
	
	
| package kotlinx.coroutines;
 | |
| 
 | |
| import kotlin.Metadata;
 | |
| import kotlin.coroutines.CoroutineContext;
 | |
| import kotlin.jvm.functions.Function2;
 | |
| 
 | |
| /* compiled from: ThreadContextElement.kt */
 | |
| @Metadata(d1 = {"\u0000\u001a\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0005\bf\u0018\u0000*\u0004\b\u0000\u0010\u00012\u00020\u0002J\u001d\u0010\u0003\u001a\u00020\u00042\u0006\u0010\u0005\u001a\u00020\u00062\u0006\u0010\u0007\u001a\u00028\u0000H&¢\u0006\u0002\u0010\bJ\u0015\u0010\t\u001a\u00028\u00002\u0006\u0010\u0005\u001a\u00020\u0006H&¢\u0006\u0002\u0010\n¨\u0006\u000b"}, d2 = {"Lkotlinx/coroutines/ThreadContextElement;", "S", "Lkotlin/coroutines/CoroutineContext$Element;", "restoreThreadContext", "", "context", "Lkotlin/coroutines/CoroutineContext;", "oldState", "(Lkotlin/coroutines/CoroutineContext;Ljava/lang/Object;)V", "updateThreadContext", "(Lkotlin/coroutines/CoroutineContext;)Ljava/lang/Object;", "kotlinx-coroutines-core"}, k = 1, mv = {1, 8, 0}, xi = 48)
 | |
| /* loaded from: classes.dex */
 | |
| public interface ThreadContextElement<S> extends CoroutineContext.Element {
 | |
|     void restoreThreadContext(CoroutineContext context, S oldState);
 | |
| 
 | |
|     S updateThreadContext(CoroutineContext context);
 | |
| 
 | |
|     /* compiled from: ThreadContextElement.kt */
 | |
|     @Metadata(k = 3, mv = {1, 8, 0}, xi = 48)
 | |
|     public static final class DefaultImpls {
 | |
|         public static <S, R> R fold(ThreadContextElement<S> threadContextElement, R r, Function2<? super R, ? super CoroutineContext.Element, ? extends R> function2) {
 | |
|             return (R) CoroutineContext.Element.DefaultImpls.fold(threadContextElement, r, function2);
 | |
|         }
 | |
| 
 | |
|         public static <S, E extends CoroutineContext.Element> E get(ThreadContextElement<S> threadContextElement, CoroutineContext.Key<E> key) {
 | |
|             return (E) CoroutineContext.Element.DefaultImpls.get(threadContextElement, key);
 | |
|         }
 | |
| 
 | |
|         public static <S> CoroutineContext minusKey(ThreadContextElement<S> threadContextElement, CoroutineContext.Key<?> key) {
 | |
|             return CoroutineContext.Element.DefaultImpls.minusKey(threadContextElement, key);
 | |
|         }
 | |
| 
 | |
|         public static <S> CoroutineContext plus(ThreadContextElement<S> threadContextElement, CoroutineContext coroutineContext) {
 | |
|             return CoroutineContext.Element.DefaultImpls.plus(threadContextElement, coroutineContext);
 | |
|         }
 | |
|     }
 | |
| }
 |