in scalasig/scalasig/src/main/scala/scala/meta/internal/scalasig/Tags.scala [259:304]
def treeTag(tree: Tree): Int = {
tree match {
case EmptyTree => EMPTYtree
case _: PackageDefTree => PACKAGEDEFtree
case _: ClassDefTree => CLASSDEFtree
case _: ModuleDefTree => MODULEDEFtree
case _: ValDefTree => VALDEFtree
case _: DefDefTree => DEFDEFtree
case _: TypeDefTree => TYPEDEFtree
case _: LabelDefTree => LABELDEFtree
case _: ImportTree => IMPORTtree
case _: TemplateTree => TEMPLATEtree
case _: BlockTree => BLOCKtree
case _: CaseTree => CASEtree
case _: AlternativeTree => ALTERNATIVEtree
case _: StarTree => STARtree
case _: BindTree => BINDtree
case _: UnapplyTree => UNAPPLYtree
case _: ArrayValueTree => ARRAYVALUEtree
case _: FunctionTree => FUNCTIONtree
case _: AssignTree => ASSIGNtree
case _: IfTree => IFtree
case _: MatchTree => MATCHtree
case _: ReturnTree => RETURNtree
case _: TryTree => TRYtree
case _: ThrowTree => THROWtree
case _: NewTree => NEWtree
case _: TypedTree => TYPEDtree
case _: TypeApplyTree => TYPEAPPLYtree
case _: ApplyTree => APPLYtree
case _: ApplyDynamicTree => APPLYDYNAMICtree
case _: SuperTree => SUPERtree
case _: ThisTree => THIStree
case _: SelectTree => SELECTtree
case _: IdentTree => IDENTtree
case _: LiteralTree => LITERALtree
case _: TypeTree => TYPEtree
case _: AnnotatedTree => ANNOTATEDtree
case _: SingletonTypeTree => SINGLETONTYPEtree
case _: SelectFromTypeTree => SELECTFROMTYPEtree
case _: CompoundTypeTree => COMPOUNDTYPEtree
case _: AppliedTypeTree => APPLIEDTYPEtree
case _: TypeBoundsTree => TYPEBOUNDStree
case _: ExistentialTypeTree => EXISTENTIALTYPEtree
}
}