/*namespace-body: | '{' optional-using-directive optional-namespace-member-declaration '}' */ private void namespace_body(ref CompilationUnitNode compilation, ref NamespaceNode currentNamespace) { printIfDebug("namespace_body"); if (!pass(TokenType.PUNT_CURLY_BRACKET_OPEN)) { throwError("'{' expected"); } consumeToken(); if (pass(TokenType.RW_USING)) { var usingDirectives = optional_using_directive(); currentNamespace.setUsings(usingDirectives); } if (pass(namespaceOption, encapsulationOptions, typesDeclarationOptions)) { optional_namespace_or_type_member_declaration(ref compilation, ref currentNamespace); } else { //EPSILON } if (!pass(TokenType.PUNT_CURLY_BRACKET_CLOSE)) { throwError("'}' expected"); } consumeToken(); }