From 3a52201fe2ba68a00105cca2c0901da5ffa18d6b Mon Sep 17 00:00:00 2001 From: Richard Moore Date: Fri, 28 Jul 2023 14:14:23 -0400 Subject: [PATCH] Allow visibility on human-readable constructors (via telegram). --- src.ts/abi/fragments.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src.ts/abi/fragments.ts b/src.ts/abi/fragments.ts index 806aa4275b..298a6df831 100644 --- a/src.ts/abi/fragments.ts +++ b/src.ts/abi/fragments.ts @@ -121,6 +121,9 @@ function setify(items: Array): ReadonlySet { return Object.freeze(result); } +const _kwVisibDeploy = "external public payable"; +const KwVisibDeploy = setify(_kwVisibDeploy.split(" ")); + // Visibility Keywords const _kwVisib = "constant external internal payable private public pure view"; const KwVisib = setify(_kwVisib.split(" ")); @@ -1265,7 +1268,7 @@ export class ConstructorFragment extends Fragment { } else if (obj instanceof TokenString) { consumeKeywords(obj, setify([ "constructor" ])); const inputs = consumeParams(obj); - const payable = !!consumeKeywords(obj, setify([ "payable" ])).has("payable"); + const payable = !!consumeKeywords(obj, KwVisibDeploy).has("payable"); const gas = consumeGas(obj); consumeEoi(obj);