Coverage Summary for Class: IrTypeHelperKt (com.kotlinorm.compiler.helpers)

Class Class, % Method, % Branch, % Line, % Instruction, %
IrTypeHelperKt 100% (1/1) 100% (3/3) 75% (3/4) 100% (3/3) 90.9% (20/22)


 /**
  * Copyright 2022-2025 kronos-orm
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
  * You may obtain a copy of the License at
  *
  *     http://www.apache.org/licenses/LICENSE-2.0
  *
  * Unless required by applicable law or agreed to in writing, software
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
  * limitations under the License.
  */
 
 package com.kotlinorm.compiler.helpers
 
 import org.jetbrains.kotlin.ir.symbols.IrClassSymbol
 import org.jetbrains.kotlin.ir.symbols.UnsafeDuringIrConstructionAPI
 import org.jetbrains.kotlin.ir.types.IrSimpleType
 import org.jetbrains.kotlin.ir.types.IrType
 import org.jetbrains.kotlin.ir.types.typeOrFail
 import org.jetbrains.kotlin.ir.types.withNullability
 import org.jetbrains.kotlin.ir.util.defaultType
 
 /**
  * Casts the given IrType to an IrSimpleType.
  *
  * @return The IrSimpleType representation of the IrType.
  */
 internal fun IrType.asSimpleType() = this as IrSimpleType
 
 /**
  * Returns the first type argument of the given IrType as an IrSimpleType.
  * 返回给定IrType的第一个类型参数
  *
  * @return The first type argument of the given IrType as an IrSimpleType.
  */
 internal fun IrType.subType() = asSimpleType().arguments.firstOrNull()?.typeOrFail?.asSimpleType()
 
 @OptIn(UnsafeDuringIrConstructionAPI::class)
 internal val IrClassSymbol.nType get() = owner.defaultType.withNullability(true)