aboutsummaryrefslogtreecommitdiffstats
path: root/libsolidity/ast/AST.h
diff options
context:
space:
mode:
authorchriseth <chris@ethereum.org>2017-08-09 23:27:46 +0800
committerGitHub <noreply@github.com>2017-08-09 23:27:46 +0800
commit279e64ae75c5615ca3fc7570a3d533270e43caac (patch)
tree53f553c8e4dc581ecba6e16bfee8862e8a775813 /libsolidity/ast/AST.h
parenta4e39592c71b6b133fd702f7dafef234add4712c (diff)
parentb210db8058851d19005f8ecd9d107a16e9c80e32 (diff)
downloaddexon-solidity-279e64ae75c5615ca3fc7570a3d533270e43caac.tar
dexon-solidity-279e64ae75c5615ca3fc7570a3d533270e43caac.tar.gz
dexon-solidity-279e64ae75c5615ca3fc7570a3d533270e43caac.tar.bz2
dexon-solidity-279e64ae75c5615ca3fc7570a3d533270e43caac.tar.lz
dexon-solidity-279e64ae75c5615ca3fc7570a3d533270e43caac.tar.xz
dexon-solidity-279e64ae75c5615ca3fc7570a3d533270e43caac.tar.zst
dexon-solidity-279e64ae75c5615ca3fc7570a3d533270e43caac.zip
Merge pull request #2720 from ethereum/visibility-parser
Show previous visibility specifier in parser error
Diffstat (limited to 'libsolidity/ast/AST.h')
-rw-r--r--libsolidity/ast/AST.h18
1 files changed, 18 insertions, 0 deletions
diff --git a/libsolidity/ast/AST.h b/libsolidity/ast/AST.h
index 3e97286b..bdf20e81 100644
--- a/libsolidity/ast/AST.h
+++ b/libsolidity/ast/AST.h
@@ -152,6 +152,24 @@ public:
/// Visibility ordered from restricted to unrestricted.
enum class Visibility { Default, Private, Internal, Public, External };
+ static std::string visibilityToString(Declaration::Visibility _visibility)
+ {
+ switch(_visibility)
+ {
+ case Declaration::Visibility::Public:
+ return "public";
+ case Declaration::Visibility::Internal:
+ return "internal";
+ case Declaration::Visibility::Private:
+ return "private";
+ case Declaration::Visibility::External:
+ return "external";
+ default:
+ solAssert(false, "Invalid visibility specifier.");
+ }
+ return std::string();
+ }
+
Declaration(
SourceLocation const& _location,
ASTPointer<ASTString> const& _name,