1 package kotlinx.atomicfu 2 3 /** 4 * All atomicfu declarations are annotated with [@OptionalJsName][kotlin.js.JsName] to have specific names in JS output. 5 * JS output transformer relies on these mangled names to erase all atomicfu references. 6 */ 7 8 // Atomic factory functions 9 internal const val ATOMIC_REF_FACTORY = "atomic\$ref\$" 10 internal const val ATOMIC_REF_FACTORY_BINARY_COMPATIBILITY = "atomic\$ref\$1" 11 internal const val ATOMIC_INT_FACTORY = "atomic\$int\$" 12 internal const val ATOMIC_INT_FACTORY_BINARY_COMPATIBILITY = "atomic\$int\$1" 13 internal const val ATOMIC_LONG_FACTORY = "atomic\$long\$" 14 internal const val ATOMIC_LONG_FACTORY_BINARY_COMPATIBILITY = "atomic\$long\$1" 15 internal const val ATOMIC_BOOLEAN_FACTORY = "atomic\$boolean\$" 16 internal const val ATOMIC_BOOLEAN_FACTORY_BINARY_COMPATIBILITY = "atomic\$boolean\$1" 17 18 // Atomic value 19 internal const val ATOMIC_VALUE = "kotlinx\$atomicfu\$value" 20 21 // Atomic operations 22 internal const val COMPARE_AND_SET = "atomicfu\$compareAndSet" 23 internal const val GET_AND_SET = "atomicfu\$getAndSet" 24 internal const val GET_AND_INCREMENT = "atomicfu\$getAndIncrement" 25 internal const val GET_AND_INCREMENT_LONG = "atomicfu\$getAndIncrement\$long" 26 internal const val GET_AND_DECREMENT = "atomicfu\$getAndDecrement" 27 internal const val GET_AND_DECREMENT_LONG = "atomicfu\$getAndDecrement\$long" 28 internal const val INCREMENT_AND_GET = "atomicfu\$incrementAndGet" 29 internal const val INCREMENT_AND_GET_LONG = "atomicfu\$incrementAndGet\$long" 30 internal const val DECREMENT_AND_GET = "atomicfu\$decrementAndGet" 31 internal const val DECREMENT_AND_GET_LONG = "atomicfu\$decrementAndGet\$long" 32 internal const val GET_AND_ADD = "atomicfu\$getAndAdd" 33 internal const val GET_AND_ADD_LONG = "atomicfu\$getAndAdd\$long" 34 internal const val ADD_AND_GET = "atomicfu\$addAndGet" 35 internal const val ADD_AND_GET_LONG = "atomicfu\$addAndGet\$long" 36 37 // Atomic arrays constructors 38 internal const val ATOMIC_ARRAY_OF_NULLS = "atomicfu\$AtomicRefArray\$ofNulls" 39 internal const val ATOMIC_INT_ARRAY = "atomicfu\$AtomicIntArray\$int" 40 internal const val ATOMIC_LONG_ARRAY = "atomicfu\$AtomicLongArray\$long" 41 internal const val ATOMIC_BOOLEAN_ARRAY = "atomicfu\$AtomicBooleanArray\$boolean" 42 internal const val ATOMIC_REF_ARRAY = "atomicfu\$AtomicRefArray\$ref" 43 44 // Atomic array operations 45 internal const val ARRAY_SIZE = "atomicfu\$size" 46 internal const val ARRAY_ELEMENT_GET = "atomicfu\$get" 47 48 // Locks 49 internal const val REENTRANT_LOCK = "atomicfu\$reentrantLock" 50 51 // Trace 52 internal const val TRACE_FACTORY_FUNCTION = "atomicfu\$Trace" 53 internal const val TRACE_BASE_CONSTRUCTOR = "atomicfu\$TraceBase" 54 internal const val TRACE_NAMED = "atomicfu\$Trace\$named" 55 internal const val TRACE_FORMAT_CLASS = "atomicfu\$TraceFormat" 56 internal const val TRACE_FORMAT_FORMAT_FUNCTION = "atomicfu\$TraceFormat\$format" 57 58 // Trace methods that append logging events to the trace 59 // [1234] used as a suffix is the number of arguments in the append overload 60 internal const val TRACE_APPEND_1 = "atomicfu\$Trace\$append\$1" 61 internal const val TRACE_APPEND_2 = "atomicfu\$Trace\$append\$2" 62 internal const val TRACE_APPEND_3 = "atomicfu\$Trace\$append\$3" 63 internal const val TRACE_APPEND_4 = "atomicfu\$Trace\$append\$4"