mirror of
https://github.com/microsoft/TypeScript.git
synced 2025-11-18 17:21:48 +00:00
Issue a diagnostic when the node builder performs truncation despite the NoTruncation flag being set (#40477)
This commit is contained in:
1 parent
d6859c3480
commit
94123d5744
9 files changed
+75
No files matched your search
@@ -4311,6 +4311,9 @@ namespace ts {
|
||||
approximateLength: 0
|
||||
};
|
||||
const resultingNode = cb(context);
|
||||
if (context.truncating && context.flags & NodeBuilderFlags.NoTruncation) {
|
||||
context.tracker?.reportTruncationError?.();
|
||||
}
|
||||
return context.encounteredError ? undefined : resultingNode;
|
||||
}
|
||||
|
||||
|
||||
@@ -4920,6 +4920,10 @@
|
||||
"category": "Error",
|
||||
"code": 7055
|
||||
},
|
||||
"The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed.": {
|
||||
"category": "Error",
|
||||
"code": 7056
|
||||
},
|
||||
|
||||
"You cannot rename this element.": {
|
||||
"category": "Error",
|
||||
|
||||
@@ -73,6 +73,7 @@ namespace ts {
|
||||
reportCyclicStructureError,
|
||||
reportPrivateInBaseOfClassExpression,
|
||||
reportLikelyUnsafeImportRequiredError,
|
||||
reportTruncationError,
|
||||
moduleResolverHost: host,
|
||||
trackReferencedAmbientModule,
|
||||
trackExternalModuleSymbolOfImportTypeNode,
|
||||
@@ -197,6 +198,12 @@ namespace ts {
|
||||
}
|
||||
}
|
||||
|
||||
function reportTruncationError() {
|
||||
if (errorNameNode) {
|
||||
context.addDiagnostic(createDiagnosticForNode(errorNameNode, Diagnostics.The_inferred_type_of_this_node_exceeds_the_maximum_length_the_compiler_will_serialize_An_explicit_type_annotation_is_needed));
|
||||
}
|
||||
}
|
||||
|
||||
function reportNonlocalAugmentation(containingFile: SourceFile, parentSymbol: Symbol, symbol: Symbol) {
|
||||
const primaryDeclaration = find(parentSymbol.declarations, d => getSourceFileOfNode(d) === containingFile)!;
|
||||
const augmentingDeclarations = filter(symbol.declarations, d => getSourceFileOfNode(d) !== containingFile);
|
||||
|
||||
@@ -7867,6 +7867,7 @@ namespace ts {
|
||||
reportInaccessibleUniqueSymbolError?(): void;
|
||||
reportCyclicStructureError?(): void;
|
||||
reportLikelyUnsafeImportRequiredError?(specifier: string): void;
|
||||
reportTruncationError?(): void;
|
||||
moduleResolverHost?: ModuleSpecifierResolutionHost & { getCommonSourceDirectory(): string };
|
||||
trackReferencedAmbientModule?(decl: ModuleDeclaration, symbol: Symbol): void;
|
||||
trackExternalModuleSymbolOfImportTypeNode?(symbol: Symbol): void;
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
tests/cases/compiler/hugeDeclarationOutputGetsTruncatedWithError.ts(5,14): error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed.
|
||||
|
||||
|
||||
==== tests/cases/compiler/hugeDeclarationOutputGetsTruncatedWithError.ts (1 errors) ====
|
||||
type props = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z";
|
||||
|
||||
type manyprops = `${props}${props}`;
|
||||
|
||||
export const c = null as any as {[K in manyprops]: {[K2 in manyprops]: `${K}.${K2}`}};
|
||||
~
|
||||
!!! error TS7056: The inferred type of this node exceeds the maximum length the compiler will serialize. An explicit type annotation is needed.
|
||||
@@ -0,0 +1,12 @@
|
||||
//// [hugeDeclarationOutputGetsTruncatedWithError.ts]
|
||||
type props = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z";
|
||||
|
||||
type manyprops = `${props}${props}`;
|
||||
|
||||
export const c = null as any as {[K in manyprops]: {[K2 in manyprops]: `${K}.${K2}`}};
|
||||
|
||||
//// [hugeDeclarationOutputGetsTruncatedWithError.js]
|
||||
"use strict";
|
||||
exports.__esModule = true;
|
||||
exports.c = void 0;
|
||||
exports.c = null;
|
||||
@@ -0,0 +1,18 @@
|
||||
=== tests/cases/compiler/hugeDeclarationOutputGetsTruncatedWithError.ts ===
|
||||
type props = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z";
|
||||
>props : Symbol(props, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 0, 0))
|
||||
|
||||
type manyprops = `${props}${props}`;
|
||||
>manyprops : Symbol(manyprops, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 0, 167))
|
||||
>props : Symbol(props, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 0, 0))
|
||||
>props : Symbol(props, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 0, 0))
|
||||
|
||||
export const c = null as any as {[K in manyprops]: {[K2 in manyprops]: `${K}.${K2}`}};
|
||||
>c : Symbol(c, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 4, 12))
|
||||
>K : Symbol(K, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 4, 34))
|
||||
>manyprops : Symbol(manyprops, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 0, 167))
|
||||
>K2 : Symbol(K2, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 4, 53))
|
||||
>manyprops : Symbol(manyprops, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 0, 167))
|
||||
>K : Symbol(K, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 4, 34))
|
||||
>K2 : Symbol(K2, Decl(hugeDeclarationOutputGetsTruncatedWithError.ts, 4, 53))
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
=== tests/cases/compiler/hugeDeclarationOutputGetsTruncatedWithError.ts ===
|
||||
type props = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z";
|
||||
>props : props
|
||||
|
||||
type manyprops = `${props}${props}`;
|
||||
>manyprops : "aa" | "ab" | "ac" | "ad" | "ae" | "af" | "ag" | "ah" | "ai" | "aj" | "ak" | "al" | "am" | "an" | "ao" | "ap" | "aq" | "ar" | "as" | "at" | "au" | "av" | "aw" | "ax" | "ay" | "az" | "ba" | "bb" | "bc" | "bd" | "be" | "bf" | "bg" | "bh" | "bi" | "bj" | "bk" | "bl" | "bm" | "bn" | "bo" | "bp" | "bq" | "br" | "bs" | "bt" | "bu" | "bv" | "bw" | "bx" | "by" | "bz" | "ca" | "cb" | "cc" | "cd" | "ce" | "cf" | "cg" | "ch" | "ci" | "cj" | "ck" | "cl" | "cm" | "cn" | "co" | "cp" | "cq" | "cr" | "cs" | "ct" | "cu" | "cv" | "cw" | "cx" | "cy" | "cz" | "da" | "db" | "dc" | "dd" | "de" | "df" | "dg" | "dh" | "di" | "dj" | "dk" | "dl" | "dm" | "dn" | "do" | "dp" | "dq" | "dr" | "ds" | "dt" | "du" | "dv" | "dw" | "dx" | "dy" | "dz" | "ea" | "eb" | "ec" | "ed" | "ee" | "ef" | "eg" | "eh" | "ei" | "ej" | "ek" | "el" | "em" | "en" | "eo" | "ep" | "eq" | "er" | "es" | "et" | "eu" | "ev" | "ew" | "ex" | "ey" | "ez" | "fa" | "fb" | "fc" | "fd" | "fe" | "ff" | "fg" | "fh" | "fi" | "fj" | "fk" | "fl" | "fm" | "fn" | "fo" | "fp" | "fq" | "fr" | "fs" | "ft" | "fu" | "fv" | "fw" | "fx" | "fy" | "fz" | "ga" | "gb" | "gc" | "gd" | "ge" | "gf" | "gg" | "gh" | "gi" | "gj" | "gk" | "gl" | "gm" | "gn" | "go" | "gp" | "gq" | "gr" | "gs" | "gt" | "gu" | "gv" | "gw" | "gx" | "gy" | "gz" | "ha" | "hb" | "hc" | "hd" | "he" | "hf" | "hg" | "hh" | "hi" | "hj" | "hk" | "hl" | "hm" | "hn" | "ho" | "hp" | "hq" | "hr" | "hs" | "ht" | "hu" | "hv" | "hw" | "hx" | "hy" | "hz" | "ia" | "ib" | "ic" | "id" | "ie" | "if" | "ig" | "ih" | "ii" | "ij" | "ik" | "il" | "im" | "in" | "io" | "ip" | "iq" | "ir" | "is" | "it" | "iu" | "iv" | "iw" | "ix" | "iy" | "iz" | "ja" | "jb" | "jc" | "jd" | "je" | "jf" | "jg" | "jh" | "ji" | "jj" | "jk" | "jl" | "jm" | "jn" | "jo" | "jp" | "jq" | "jr" | "js" | "jt" | "ju" | "jv" | "jw" | "jx" | "jy" | "jz" | "ka" | "kb" | "kc" | "kd" | "ke" | "kf" | "kg" | "kh" | "ki" | "kj" | "kk" | "kl" | "km" | "kn" | "ko" | "kp" | "kq" | "kr" | "ks" | "kt" | "ku" | "kv" | "kw" | "kx" | "ky" | "kz" | "la" | "lb" | "lc" | "ld" | "le" | "lf" | "lg" | "lh" | "li" | "lj" | "lk" | "ll" | "lm" | "ln" | "lo" | "lp" | "lq" | "lr" | "ls" | "lt" | "lu" | "lv" | "lw" | "lx" | "ly" | "lz" | "ma" | "mb" | "mc" | "md" | "me" | "mf" | "mg" | "mh" | "mi" | "mj" | "mk" | "ml" | "mm" | "mn" | "mo" | "mp" | "mq" | "mr" | "ms" | "mt" | "mu" | "mv" | "mw" | "mx" | "my" | "mz" | "na" | "nb" | "nc" | "nd" | "ne" | "nf" | "ng" | "nh" | "ni" | "nj" | "nk" | "nl" | "nm" | "nn" | "no" | "np" | "nq" | "nr" | "ns" | "nt" | "nu" | "nv" | "nw" | "nx" | "ny" | "nz" | "oa" | "ob" | "oc" | "od" | "oe" | "of" | "og" | "oh" | "oi" | "oj" | "ok" | "ol" | "om" | "on" | "oo" | "op" | "oq" | "or" | "os" | "ot" | "ou" | "ov" | "ow" | "ox" | "oy" | "oz" | "pa" | "pb" | "pc" | "pd" | "pe" | "pf" | "pg" | "ph" | "pi" | "pj" | "pk" | "pl" | "pm" | "pn" | "po" | "pp" | "pq" | "pr" | "ps" | "pt" | "pu" | "pv" | "pw" | "px" | "py" | "pz" | "qa" | "qb" | "qc" | "qd" | "qe" | "qf" | "qg" | "qh" | "qi" | "qj" | "qk" | "ql" | "qm" | "qn" | "qo" | "qp" | "qq" | "qr" | "qs" | "qt" | "qu" | "qv" | "qw" | "qx" | "qy" | "qz" | "ra" | "rb" | "rc" | "rd" | "re" | "rf" | "rg" | "rh" | "ri" | "rj" | "rk" | "rl" | "rm" | "rn" | "ro" | "rp" | "rq" | "rr" | "rs" | "rt" | "ru" | "rv" | "rw" | "rx" | "ry" | "rz" | "sa" | "sb" | "sc" | "sd" | "se" | "sf" | "sg" | "sh" | "si" | "sj" | "sk" | "sl" | "sm" | "sn" | "so" | "sp" | "sq" | "sr" | "ss" | "st" | "su" | "sv" | "sw" | "sx" | "sy" | "sz" | "ta" | "tb" | "tc" | "td" | "te" | "tf" | "tg" | "th" | "ti" | "tj" | "tk" | "tl" | "tm" | "tn" | "to" | "tp" | "tq" | "tr" | "ts" | "tt" | "tu" | "tv" | "tw" | "tx" | "ty" | "tz" | "ua" | "ub" | "uc" | "ud" | "ue" | "uf" | "ug" | "uh" | "ui" | "uj" | "uk" | "ul" | "um" | "un" | "uo" | "up" | "uq" | "ur" | "us" | "ut" | "uu" | "uv" | "uw" | "ux" | "uy" | "uz" | "va" | "vb" | "vc" | "vd" | "ve" | "vf" | "vg" | "vh" | "vi" | "vj" | "vk" | "vl" | "vm" | "vn" | "vo" | "vp" | "vq" | "vr" | "vs" | "vt" | "vu" | "vv" | "vw" | "vx" | "vy" | "vz" | "wa" | "wb" | "wc" | "wd" | "we" | "wf" | "wg" | "wh" | "wi" | "wj" | "wk" | "wl" | "wm" | "wn" | "wo" | "wp" | "wq" | "wr" | "ws" | "wt" | "wu" | "wv" | "ww" | "wx" | "wy" | "wz" | "xa" | "xb" | "xc" | "xd" | "xe" | "xf" | "xg" | "xh" | "xi" | "xj" | "xk" | "xl" | "xm" | "xn" | "xo" | "xp" | "xq" | "xr" | "xs" | "xt" | "xu" | "xv" | "xw" | "xx" | "xy" | "xz" | "ya" | "yb" | "yc" | "yd" | "ye" | "yf" | "yg" | "yh" | "yi" | "yj" | "yk" | "yl" | "ym" | "yn" | "yo" | "yp" | "yq" | "yr" | "ys" | "yt" | "yu" | "yv" | "yw" | "yx" | "yy" | "yz" | "za" | "zb" | "zc" | "zd" | "ze" | "zf" | "zg" | "zh" | "zi" | "zj" | "zk" | "zl" | "zm" | "zn" | "zo" | "zp" | "zq" | "zr" | "zs" | "zt" | "zu" | "zv" | "zw" | "zx" | "zy" | "zz"
|
||||
|
||||
export const c = null as any as {[K in manyprops]: {[K2 in manyprops]: `${K}.${K2}`}};
|
||||
>c : { aa: { aa: "aa.aa"; ab: "aa.ab"; ac: "aa.ac"; ad: "aa.ad"; ae: "aa.ae"; af: "aa.af"; ag: "aa.ag"; ah: "aa.ah"; ai: "aa.ai"; aj: "aa.aj"; ak: "aa.ak"; al: "aa.al"; am: "aa.am"; an: "aa.an"; ao: "aa.ao"; ap: "aa.ap"; aq: "aa.aq"; ar: "aa.ar"; as: "aa.as"; at: "aa.at"; au: "aa.au"; av: "aa.av"; aw: "aa.aw"; ax: "aa.ax"; ay: "aa.ay"; az: "aa.az"; ba: "aa.ba"; bb: "aa.bb"; bc: "aa.bc"; bd: "aa.bd"; be: "aa.be"; bf: "aa.bf"; bg: "aa.bg"; bh: "aa.bh"; bi: "aa.bi"; bj: "aa.bj"; bk: "aa.bk"; bl: "aa.bl"; bm: "aa.bm"; bn: "aa.bn"; bo: "aa.bo"; bp: "aa.bp"; bq: "aa.bq"; br: "aa.br"; bs: "aa.bs"; bt: "aa.bt"; bu: "aa.bu"; bv: "aa.bv"; bw: "aa.bw"; bx: "aa.bx"; by: "aa.by"; bz: "aa.bz"; ca: "aa.ca"; cb: "aa.cb"; cc: "aa.cc"; cd: "aa.cd"; ce: "aa.ce"; cf: "aa.cf"; cg: "aa.cg"; ch: "aa.ch"; ci: "aa.ci"; cj: "aa.cj"; ck: "aa.ck"; cl: "aa.cl"; cm: "aa.cm"; cn: "aa.cn"; co: "aa.co"; cp: "aa.cp"; cq: "aa.cq"; cr: "aa.cr"; cs: "aa.cs"; ct: "aa.ct"; cu: "aa.cu"; cv: "aa.cv"; cw: "aa.cw"; cx: "aa.cx"; cy: "aa.cy"; cz: "aa.cz"; da: "aa.da"; db: "aa.db"; dc: "aa.dc"; dd: "aa.dd"; de: "aa.de"; df: "aa.df"; dg: "aa.dg"; dh: "aa.dh"; di: "aa.di"; dj: "aa.dj"; dk: "aa.dk"; dl: "aa.dl"; dm: "aa.dm"; dn: "aa.dn"; do: "aa.do"; dp: "aa.dp"; dq: "aa.dq"; dr: "aa.dr"; ds: "aa.ds"; dt: "aa.dt"; du: "aa.du"; dv: "aa.dv"; dw: "aa.dw"; dx: "aa.dx"; dy: "aa.dy"; dz: "aa.dz"; ea: "aa.ea"; eb: "aa.eb"; ec: "aa.ec"; ed: "aa.ed"; ee: "aa.ee"; ef: "aa.ef"; eg: "aa.eg"; eh: "aa.eh"; ei: "aa.ei"; ej: "aa.ej"; ek: "aa.ek"; el: "aa.el"; em: "aa.em"; en: "aa.en"; eo: "aa.eo"; ep: "aa.ep"; eq: "aa.eq"; er: "aa.er"; es: "aa.es"; et: "aa.et"; eu: "aa.eu"; ev: "aa.ev"; ew: "aa.ew"; ex: "aa.ex"; ey: "aa.ey"; ez: "aa.ez"; fa: "aa.fa"; fb: "aa.fb"; fc: "aa.fc"; fd: "aa.fd"; fe: "aa.fe"; ff: "aa.ff"; fg: "aa.fg"; fh: "aa.fh"; fi: "aa.fi"; fj: "aa.fj"; fk: "aa.fk"; fl: "aa.fl"; fm: "aa.fm"; fn: "aa.fn"; fo: "aa.fo"; fp: "aa.fp"; fq: "aa.fq"; fr: "aa.fr"; fs: "aa.fs"; ft: "aa.ft"; fu: "aa.fu"; fv: "aa.fv"; fw: "aa.fw"; fx: "aa.fx"; fy: "aa.fy"; fz: "aa.fz"; ga: "aa.ga"; gb: "aa.gb"; gc: "aa.gc"; gd: "aa.gd"; ge: "aa.ge"; gf: "aa.gf"; gg: "aa.gg"; gh: "aa.gh"; gi: "aa.gi"; gj: "aa.gj"; gk: "aa.gk"; gl: "aa.gl"; gm: "aa.gm"; gn: "aa.gn"; go: "aa.go"; gp: "aa.gp"; gq: "aa.gq"; gr: "aa.gr"; gs: "aa.gs"; gt: "aa.gt"; gu: "aa.gu"; gv: "aa.gv"; gw: "aa.gw"; gx: "aa.gx"; gy: "aa.gy"; gz: "aa.gz"; ha: "aa.ha"; hb: "aa.hb"; hc: "aa.hc"; hd: "aa.hd"; he: "aa.he"; hf: "aa.hf"; hg: "aa.hg"; hh: "aa.hh"; hi: "aa.hi"; hj: "aa.hj"; hk: "aa.hk"; hl: "aa.hl"; hm: "aa.hm"; hn: "aa.hn"; ho: "aa.ho"; hp: "aa.hp"; hq: "aa.hq"; hr: "aa.hr"; hs: "aa.hs"; ht: "aa.ht"; hu: "aa.hu"; hv: "aa.hv"; hw: "aa.hw"; hx: "aa.hx"; hy: "aa.hy"; hz: "aa.hz"; ia: "aa.ia"; ib: "aa.ib"; ic: "aa.ic"; id: "aa.id"; ie: "aa.ie"; if: "aa.if"; ig: "aa.ig"; ih: "aa.ih"; ii: "aa.ii"; ij: "aa.ij"; ik: "aa.ik"; il: "aa.il"; im: "aa.im"; in: "aa.in"; io: "aa.io"; ip: "aa.ip"; iq: "aa.iq"; ir: "aa.ir"; is: "aa.is"; it: "aa.it"; iu: "aa.iu"; iv: "aa.iv"; iw: "aa.iw"; ix: "aa.ix"; iy: "aa.iy"; iz: "aa.iz"; ja: "aa.ja"; jb: "aa.jb"; jc: "aa.jc"; jd: "aa.jd"; je: "aa.je"; jf: "aa.jf"; jg: "aa.jg"; jh: "aa.jh"; ji: "aa.ji"; jj: "aa.jj"; jk: "aa.jk"; jl: "aa.jl"; jm: "aa.jm"; jn: "aa.jn"; jo: "aa.jo"; jp: "aa.jp"; jq: "aa.jq"; jr: "aa.jr"; js: "aa.js"; jt: "aa.jt"; ju: "aa.ju"; jv: "aa.jv"; jw: "aa.jw"; jx: "aa.jx"; jy: "aa.jy"; jz: "aa.jz"; ka: "aa.ka"; kb: "aa.kb"; kc: "aa.kc"; kd: "aa.kd"; ke: "aa.ke"; kf: "aa.kf"; kg: "aa.kg"; kh: "aa.kh"; ki: "aa.ki"; kj: "aa.kj"; kk: "aa.kk"; kl: "aa.kl"; km: "aa.km"; kn: "aa.kn"; ko: "aa.ko"; kp: "aa.kp"; kq: "aa.kq"; kr: "aa.kr"; ks: "aa.ks"; kt: "aa.kt"; ku: "aa.ku"; kv: "aa.kv"; kw: "aa.kw"; kx: "aa.kx"; ky: "aa.ky"; kz: "aa.kz"; la: "aa.la"; lb: "aa.lb"; lc: "aa.lc"; ld: "aa.ld"; le: "aa.le"; lf: "aa.lf"; lg: "aa.lg"; lh: "aa.lh"; li: "aa.li"; lj: "aa.lj"; lk: "aa.lk"; ll: "aa.ll"; lm: "aa.lm"; ln: "aa.ln"; lo: "aa.lo"; lp: "aa.lp"; lq: "aa.lq"; lr: "aa.lr"; ls: "aa.ls"; lt: "aa.lt"; lu: "aa.lu"; lv: "aa.lv"; lw: "aa.lw"; lx: "aa.lx"; ly: "aa.ly"; lz: "aa.lz"; ma: "aa.ma"; mb: "aa.mb"; mc: "aa.mc"; md: "aa.md"; me: "aa.me"; mf: "aa.mf"; mg: "aa.mg"; mh: "aa.mh"; mi: "aa.mi"; mj: "aa.mj"; mk: "aa.mk"; ml: "aa.ml"; mm: "aa.mm"; mn: "aa.mn"; mo: "aa.mo"; mp: "aa.mp"; mq: "aa.mq"; mr: "aa.mr"; ms: "aa.ms"; mt: "aa.mt"; mu: "aa.mu"; mv: "aa.mv"; mw: "aa.mw"; mx: "aa.mx"; my: "aa.my"; mz: "aa.mz"; na: "aa.na"; nb: "aa.nb"; nc: "aa.nc"; nd: "aa.nd"; ne: "aa.ne"; nf: "aa.nf"; ng: "aa.ng"; nh: "aa.nh"; ni: "aa.ni"; nj: "aa.nj"; nk: "aa.nk"; nl: "aa.nl"; nm: "aa.nm"; nn: "aa.nn"; no: "aa.no"; np: "aa.np"; nq: "aa.nq"; nr: "aa.nr"; ns: "aa.ns"; nt: "aa.nt"; nu: "aa.nu"; nv: "aa.nv"; nw: "aa.nw"; nx: "aa.nx"; ny: "aa.ny"; nz: "aa.nz"; oa: "aa.oa"; ob: "aa.ob"; oc: "aa.oc"; od: "aa.od"; oe: "aa.oe"; of: "aa.of"; og: "aa.og"; oh: "aa.oh"; oi: "aa.oi"; oj: "aa.oj"; ok: "aa.ok"; ol: "aa.ol"; om: "aa.om"; on: "aa.on"; oo: "aa.oo"; op: "aa.op"; oq: "aa.oq"; or: "aa.or"; os: "aa.os"; ot: "aaLine truncated
|
||||
>null as any as {[K in manyprops]: {[K2 in manyprops]: `${K}.${K2}`}} : { aa: { aa: "aa.aa"; ab: "aa.ab"; ac: "aa.ac"; ad: "aa.ad"; ae: "aa.ae"; af: "aa.af"; ag: "aa.ag"; ah: "aa.ah"; ai: "aa.ai"; aj: "aa.aj"; ak: "aa.ak"; al: "aa.al"; am: "aa.am"; an: "aa.an"; ao: "aa.ao"; ap: "aa.ap"; aq: "aa.aq"; ar: "aa.ar"; as: "aa.as"; at: "aa.at"; au: "aa.au"; av: "aa.av"; aw: "aa.aw"; ax: "aa.ax"; ay: "aa.ay"; az: "aa.az"; ba: "aa.ba"; bb: "aa.bb"; bc: "aa.bc"; bd: "aa.bd"; be: "aa.be"; bf: "aa.bf"; bg: "aa.bg"; bh: "aa.bh"; bi: "aa.bi"; bj: "aa.bj"; bk: "aa.bk"; bl: "aa.bl"; bm: "aa.bm"; bn: "aa.bn"; bo: "aa.bo"; bp: "aa.bp"; bq: "aa.bq"; br: "aa.br"; bs: "aa.bs"; bt: "aa.bt"; bu: "aa.bu"; bv: "aa.bv"; bw: "aa.bw"; bx: "aa.bx"; by: "aa.by"; bz: "aa.bz"; ca: "aa.ca"; cb: "aa.cb"; cc: "aa.cc"; cd: "aa.cd"; ce: "aa.ce"; cf: "aa.cf"; cg: "aa.cg"; ch: "aa.ch"; ci: "aa.ci"; cj: "aa.cj"; ck: "aa.ck"; cl: "aa.cl"; cm: "aa.cm"; cn: "aa.cn"; co: "aa.co"; cp: "aa.cp"; cq: "aa.cq"; cr: "aa.cr"; cs: "aa.cs"; ct: "aa.ct"; cu: "aa.cu"; cv: "aa.cv"; cw: "aa.cw"; cx: "aa.cx"; cy: "aa.cy"; cz: "aa.cz"; da: "aa.da"; db: "aa.db"; dc: "aa.dc"; dd: "aa.dd"; de: "aa.de"; df: "aa.df"; dg: "aa.dg"; dh: "aa.dh"; di: "aa.di"; dj: "aa.dj"; dk: "aa.dk"; dl: "aa.dl"; dm: "aa.dm"; dn: "aa.dn"; do: "aa.do"; dp: "aa.dp"; dq: "aa.dq"; dr: "aa.dr"; ds: "aa.ds"; dt: "aa.dt"; du: "aa.du"; dv: "aa.dv"; dw: "aa.dw"; dx: "aa.dx"; dy: "aa.dy"; dz: "aa.dz"; ea: "aa.ea"; eb: "aa.eb"; ec: "aa.ec"; ed: "aa.ed"; ee: "aa.ee"; ef: "aa.ef"; eg: "aa.eg"; eh: "aa.eh"; ei: "aa.ei"; ej: "aa.ej"; ek: "aa.ek"; el: "aa.el"; em: "aa.em"; en: "aa.en"; eo: "aa.eo"; ep: "aa.ep"; eq: "aa.eq"; er: "aa.er"; es: "aa.es"; et: "aa.et"; eu: "aa.eu"; ev: "aa.ev"; ew: "aa.ew"; ex: "aa.ex"; ey: "aa.ey"; ez: "aa.ez"; fa: "aa.fa"; fb: "aa.fb"; fc: "aa.fc"; fd: "aa.fd"; fe: "aa.fe"; ff: "aa.ff"; fg: "aa.fg"; fh: "aa.fh"; fi: "aa.fi"; fj: "aa.fj"; fk: "aa.fk"; fl: "aa.fl"; fm: "aa.fm"; fn: "aa.fn"; fo: "aa.fo"; fp: "aa.fp"; fq: "aa.fq"; fr: "aa.fr"; fs: "aa.fs"; ft: "aa.ft"; fu: "aa.fu"; fv: "aa.fv"; fw: "aa.fw"; fx: "aa.fx"; fy: "aa.fy"; fz: "aa.fz"; ga: "aa.ga"; gb: "aa.gb"; gc: "aa.gc"; gd: "aa.gd"; ge: "aa.ge"; gf: "aa.gf"; gg: "aa.gg"; gh: "aa.gh"; gi: "aa.gi"; gj: "aa.gj"; gk: "aa.gk"; gl: "aa.gl"; gm: "aa.gm"; gn: "aa.gn"; go: "aa.go"; gp: "aa.gp"; gq: "aa.gq"; gr: "aa.gr"; gs: "aa.gs"; gt: "aa.gt"; gu: "aa.gu"; gv: "aa.gv"; gw: "aa.gw"; gx: "aa.gx"; gy: "aa.gy"; gz: "aa.gz"; ha: "aa.ha"; hb: "aa.hb"; hc: "aa.hc"; hd: "aa.hd"; he: "aa.he"; hf: "aa.hf"; hg: "aa.hg"; hh: "aa.hh"; hi: "aa.hi"; hj: "aa.hj"; hk: "aa.hk"; hl: "aa.hl"; hm: "aa.hm"; hn: "aa.hn"; ho: "aa.ho"; hp: "aa.hp"; hq: "aa.hq"; hr: "aa.hr"; hs: "aa.hs"; ht: "aa.ht"; hu: "aa.hu"; hv: "aa.hv"; hw: "aa.hw"; hx: "aa.hx"; hy: "aa.hy"; hz: "aa.hz"; ia: "aa.ia"; ib: "aa.ib"; ic: "aa.ic"; id: "aa.id"; ie: "aa.ie"; if: "aa.if"; ig: "aa.ig"; ih: "aa.ih"; ii: "aa.ii"; ij: "aa.ij"; ik: "aa.ik"; il: "aa.il"; im: "aa.im"; in: "aa.in"; io: "aa.io"; ip: "aa.ip"; iq: "aa.iq"; ir: "aa.ir"; is: "aa.is"; it: "aa.it"; iu: "aa.iu"; iv: "aa.iv"; iw: "aa.iw"; ix: "aa.ix"; iy: "aa.iy"; iz: "aa.iz"; ja: "aa.ja"; jb: "aa.jb"; jc: "aa.jc"; jd: "aa.jd"; je: "aa.je"; jf: "aa.jf"; jg: "aa.jg"; jh: "aa.jh"; ji: "aa.ji"; jj: "aa.jj"; jk: "aa.jk"; jl: "aa.jl"; jm: "aa.jm"; jn: "aa.jn"; jo: "aa.jo"; jp: "aa.jp"; jq: "aa.jq"; jr: "aa.jr"; js: "aa.js"; jt: "aa.jt"; ju: "aa.ju"; jv: "aa.jv"; jw: "aa.jw"; jx: "aa.jx"; jy: "aa.jy"; jz: "aa.jz"; ka: "aa.ka"; kb: "aa.kb"; kc: "aa.kc"; kd: "aa.kd"; ke: "aa.ke"; kf: "aa.kf"; kg: "aa.kg"; kh: "aa.kh"; ki: "aa.ki"; kj: "aa.kj"; kk: "aa.kk"; kl: "aa.kl"; km: "aa.km"; kn: "aa.kn"; ko: "aa.ko"; kp: "aa.kp"; kq: "aa.kq"; kr: "aa.kr"; ks: "aa.ks"; kt: "aa.kt"; ku: "aa.ku"; kv: "aa.kv"; kw: "aa.kw"; kx: "aa.kx"; ky: "aa.ky"; kz: "aa.kz"; la: "aa.la"; lb: "aa.lb"; lc: "aa.lc"; ld: "aa.ld"; le: "aa.le"; lf: "aa.lf"; lg: "aa.lg"; lh: "aa.lh"; li: "aa.li"; lj: "aa.lj"; lk: "aa.lk"; ll: "aa.ll"; lm: "aa.lm"; ln: "aa.ln"; lo: "aa.lo"; lp: "aa.lp"; lq: "aa.lq"; lr: "aa.lr"; ls: "aa.ls"; lt: "aa.lt"; lu: "aa.lu"; lv: "aa.lv"; lw: "aa.lw"; lx: "aa.lx"; ly: "aa.ly"; lz: "aa.lz"; ma: "aa.ma"; mb: "aa.mb"; mc: "aa.mc"; md: "aa.md"; me: "aa.me"; mf: "aa.mf"; mg: "aa.mg"; mh: "aa.mh"; mi: "aa.mi"; mj: "aa.mj"; mk: "aa.mk"; ml: "aa.ml"; mm: "aa.mm"; mn: "aa.mn"; mo: "aa.mo"; mp: "aa.mp"; mq: "aa.mq"; mr: "aa.mr"; ms: "aa.ms"; mt: "aa.mt"; mu: "aa.mu"; mv: "aa.mv"; mw: "aa.mw"; mx: "aa.mx"; my: "aa.my"; mz: "aa.mz"; na: "aa.na"; nb: "aa.nb"; nc: "aa.nc"; nd: "aa.nd"; ne: "aa.ne"; nf: "aa.nf"; ng: "aa.ng"; nh: "aa.nh"; ni: "aa.ni"; nj: "aa.nj"; nk: "aa.nk"; nl: "aa.nl"; nm: "aa.nm"; nn: "aa.nn"; no: "aa.no"; np: "aa.np"; nq: "aa.nq"; nr: "aa.nr"; ns: "aa.ns"; nt: "aa.nt"; nu: "aa.nu"; nv: "aa.nv"; nw: "aa.nw"; nx: "aa.nx"; ny: "aa.ny"; nz: "aa.nz"; oa: "aa.oa"; ob: "aa.ob"; oc: "aa.oc"; od: "aa.od"; oe: "aa.oe"; of: "aa.of"; og: "aa.og"; oh: "aa.oh"; oi: "aa.oi"; oj: "aa.oj"; ok: "aa.ok"; ol: "aa.ol"; om: "aa.om"; on: "aa.on"; oo: "Line truncated
|
||||
>null as any : any
|
||||
>null : null
|
||||
|
||||
@@ -0,0 +1,6 @@
|
||||
// @declaration: true
|
||||
type props = "a" | "b" | "c" | "d" | "e" | "f" | "g" | "h" | "i" | "j" | "k" | "l" | "m" | "n" | "o" | "p" | "q" | "r" | "s" | "t" | "u" | "v" | "w" | "x" | "y" | "z";
|
||||
|
||||
type manyprops = `${props}${props}`;
|
||||
|
||||
export const c = null as any as {[K in manyprops]: {[K2 in manyprops]: `${K}.${K2}`}};
|
||||
Reference in new issue
Block a user