File Coverage

blib/lib/MarpaX/Languages/ECMAScript/AST/Grammar/ECMAScript_262_5/Lexical/StringLiteral.pm
Criterion Covered Total %
statement 16 16 100.0
branch n/a
condition n/a
subroutine 6 6 100.0
pod 2 2 100.0
total 24 24 100.0


line stmt bran cond sub pod time code
1 1     1   6 use strict;
  1         2  
  1         37  
2 1     1   7 use warnings FATAL => 'all';
  1         2  
  1         53  
3              
4             package MarpaX::Languages::ECMAScript::AST::Grammar::ECMAScript_262_5::Lexical::StringLiteral;
5 1     1   5 use parent qw/MarpaX::Languages::ECMAScript::AST::Grammar::ECMAScript_262_5::Base/;
  1         2  
  1         9  
6 1     1   817 use MarpaX::Languages::ECMAScript::AST::Grammar::ECMAScript_262_5::Lexical::StringLiteral::Semantics;
  1         3  
  1         187  
7              
8             # ABSTRACT: ECMAScript-262, Edition 5, string literal grammar written in Marpa BNF
9              
10             our $VERSION = '0.018'; # VERSION
11              
12              
13             #
14             # Prevent injection of this grammar to collide with others:
15             # ___yy is changed to ___StringLiteral___yy
16             #
17             our $grammar_content = do {local $/; };
18             $grammar_content =~ s/___/___StringLiteral___/g;
19              
20              
21             sub make_grammar_content {
22 6     6 1 10 my ($class) = @_;
23 6         52 return $grammar_content;
24             }
25              
26              
27             sub make_semantics_package {
28 2     2 1 3 my ($class) = @_;
29 2         20 return join('::', $class, 'Semantics');
30             }
31              
32              
33             1;
34              
35             =pod
36              
37             =encoding utf-8
38              
39             =head1 NAME
40              
41             MarpaX::Languages::ECMAScript::AST::Grammar::ECMAScript_262_5::Lexical::StringLiteral - ECMAScript-262, Edition 5, string literal grammar written in Marpa BNF
42              
43             =head1 VERSION
44              
45             version 0.018
46              
47             =head1 SYNOPSIS
48              
49             use strict;
50             use warnings FATAL => 'all';
51             use MarpaX::Languages::ECMAScript::AST::Grammar::ECMAScript_262_5::Lexical::StringLiteral;
52              
53             my $grammar = MarpaX::Languages::ECMAScript::AST::Grammar::ECMAScript_262_5::Lexical::StringLiteral->new();
54              
55             my $grammar_content = $grammar->content();
56             my $grammar_option = $grammar->grammar_option();
57             my $recce_option = $grammar->recce_option();
58              
59             =head1 DESCRIPTION
60              
61             This modules returns describes the ECMAScript 262, Edition 5 lexical string literal grammar written in Marpa BNF, as of L.
62              
63             This module inherits the methods from MarpaX::Languages::ECMAScript::AST::Grammar::ECMAScript_262_5::Base package, and have a semantics.
64              
65             =head1 SUBROUTINES/METHODS
66              
67             =head2 make_grammar_content($class)
68              
69             Returns the grammar. This will be injected in the Program's grammar.
70              
71             =head2 semantics_package($class)
72              
73             Class method that returns a default recce semantics_package, doing nothing else but a new().
74              
75             =head1 SEE ALSO
76              
77             L
78              
79             =head1 AUTHOR
80              
81             Jean-Damien Durand
82              
83             =head1 COPYRIGHT AND LICENSE
84              
85             This software is copyright (c) 2013 by Jean-Damien Durand.
86              
87             This is free software; you can redistribute it and/or modify it under
88             the same terms as the Perl 5 programming language system itself.
89              
90             =cut
91              
92             __DATA__