Skip to content

Commit 4cdea02

Browse files
committed
Finish 3.1.2
2 parents babb6fc + 782d672 commit 4cdea02

File tree

5 files changed

+34
-35
lines changed

5 files changed

+34
-35
lines changed

README.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
[![Gem Version](https://badge.fury.io/rb/rdf-turtle.png)](https://badge.fury.io/rb/rdf-turtle)
66
[![Build Status](https://travis-ci.org/ruby-rdf/rdf-turtle.png?branch=master)](https://travis-ci.org/ruby-rdf/rdf-turtle)
77
[![Coverage Status](https://coveralls.io/repos/ruby-rdf/rdf-turtle/badge.svg)](https://coveralls.io/r/ruby-rdf/rdf-turtle)
8-
[![Dependency Status](https://gemnasium.com/ruby-rdf/rdf-turtle.png)](https://gemnasium.com/ruby-rdf/rdf-turtle)
98

109
## Description
1110
This is a [Ruby][] implementation of a [Turtle][] parser for [RDF.rb][].

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
3.1.1
1+
3.1.2

lib/rdf/turtle/reader.rb

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -163,7 +163,7 @@ def each_triple(&block)
163163
# @return [RDF::Statement] Added statement
164164
# @raise [RDF::ReaderError] Checks parameter types and raises if they are incorrect if parsing mode is _validate_.
165165
def add_statement(production, statement)
166-
error("Statement is invalid: #{statement.inspect.inspect}", production: produciton) if validate? && statement.invalid?
166+
error("Statement is invalid: #{statement.inspect}", production: produciton) if validate? && statement.invalid?
167167
@callback.call(statement) if statement.subject &&
168168
statement.predicate &&
169169
statement.object &&

lib/rdf/turtle/terminals.rb

Lines changed: 31 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,9 @@
1+
# encoding: utf-8
12
require 'ebnf/ll1/lexer'
23

34
module RDF::Turtle
45
module Terminals
56
# Definitions of token regular expressions used for lexical analysis
6-
77
##
88
# Unicode regular expressions for Ruby 1.9+ with the Oniguruma engine.
99
U_CHARS1 = Regexp.compile(<<-EOS.gsub(/\s+/, ''))
@@ -12,66 +12,66 @@ module Terminals
1212
[\\u2070-\\u218F]|[\\u2C00-\\u2FEF]|[\\u3001-\\uD7FF]|
1313
[\\uF900-\\uFDCF]|[\\uFDF0-\\uFFFD]|[\\u{10000}-\\u{EFFFF}]
1414
EOS
15-
U_CHARS2 = Regexp.compile("\\u00B7|[\\u0300-\\u036F]|[\\u203F-\\u2040]").freeze
16-
IRI_RANGE = Regexp.compile("[[^<>\"{}|^`\\\\]&&[^\\x00-\\x20]]").freeze
15+
U_CHARS2 = Regexp.compile("\\u00B7|[\\u0300-\\u036F]|[\\u203F-\\u2040]", Regexp::FIXEDENCODING).freeze
16+
IRI_RANGE = Regexp.compile("[[^<>\"{}|^`\\\\]&&[^\\x00-\\x20]]", Regexp::FIXEDENCODING).freeze
1717

1818
# 26
1919
UCHAR = EBNF::LL1::Lexer::UCHAR
2020
# 170s
21-
PERCENT = /%[0-9A-Fa-f]{2}/.freeze
21+
PERCENT = /%[0-9A-Fa-f]{2}/u.freeze
2222
# 172s
23-
PN_LOCAL_ESC = /\\[_~\.\-\!$\&'\(\)\*\+,;=\/\?\#@%]/.freeze
23+
PN_LOCAL_ESC = /\\[_~\.\-\!$\&'\(\)\*\+,;=\/\?\#@%]/u.freeze
2424
# 169s
25-
PLX = /#{PERCENT}|#{PN_LOCAL_ESC}/.freeze.freeze
25+
PLX = /#{PERCENT}|#{PN_LOCAL_ESC}/u.freeze
2626
# 163s
27-
PN_CHARS_BASE = /[A-Z]|[a-z]|#{U_CHARS1}/.freeze
27+
PN_CHARS_BASE = /[A-Z]|[a-z]|#{U_CHARS1}/u.freeze
2828
# 164s
29-
PN_CHARS_U = /_|#{PN_CHARS_BASE}/.freeze
29+
PN_CHARS_U = /_|#{PN_CHARS_BASE}/u.freeze
3030
# 166s
31-
PN_CHARS = /-|[0-9]|#{PN_CHARS_U}|#{U_CHARS2}/.freeze
32-
PN_LOCAL_BODY = /(?:(?:\.|:|#{PN_CHARS}|#{PLX})*(?:#{PN_CHARS}|:|#{PLX}))?/.freeze
33-
PN_CHARS_BODY = /(?:(?:\.|#{PN_CHARS})*#{PN_CHARS})?/.freeze
31+
PN_CHARS = /-|[0-9]|#{PN_CHARS_U}|#{U_CHARS2}/u.freeze
32+
PN_LOCAL_BODY = /(?:(?:\.|:|#{PN_CHARS}|#{PLX})*(?:#{PN_CHARS}|:|#{PLX}))?/u.freeze
33+
PN_CHARS_BODY = /(?:(?:\.|#{PN_CHARS})*#{PN_CHARS})?/u.freeze
3434
# 167s
35-
PN_PREFIX = /#{PN_CHARS_BASE}#{PN_CHARS_BODY}/.freeze
35+
PN_PREFIX = /#{PN_CHARS_BASE}#{PN_CHARS_BODY}/u.freeze
3636
# 168s
37-
PN_LOCAL = /(?:[0-9]|:|#{PN_CHARS_U}|#{PLX})#{PN_LOCAL_BODY}/.freeze
37+
PN_LOCAL = /(?:[0-9]|:|#{PN_CHARS_U}|#{PLX})#{PN_LOCAL_BODY}/u.freeze
3838
# 154s
39-
EXPONENT = /[eE][+-]?[0-9]+/
39+
EXPONENT = /[eE][+-]?[0-9]+/u.freeze
4040
# 159s
41-
ECHAR = /\\[tbnrf\\"']/
41+
ECHAR = /\\[tbnrf\\"']/u.freeze
4242
# 18
43-
IRIREF = /<(?:#{IRI_RANGE}|#{UCHAR})*>/.freeze
43+
IRIREF = /<(?:#{IRI_RANGE}|#{UCHAR})*>/u.freeze
4444
# 139s
45-
PNAME_NS = /#{PN_PREFIX}?:/.freeze
45+
PNAME_NS = /#{PN_PREFIX}?:/u.freeze
4646
# 140s
47-
PNAME_LN = /#{PNAME_NS}#{PN_LOCAL}/.freeze
47+
PNAME_LN = /#{PNAME_NS}#{PN_LOCAL}/u.freeze
4848
# 141s
49-
BLANK_NODE_LABEL = /_:(?:[0-9]|#{PN_CHARS_U})(?:(?:#{PN_CHARS}|\.)*#{PN_CHARS})?/.freeze
49+
BLANK_NODE_LABEL = /_:(?:[0-9]|#{PN_CHARS_U})(?:(?:#{PN_CHARS}|\.)*#{PN_CHARS})?/u.freeze
5050
# 144s
51-
LANGTAG = /@[a-zA-Z]+(?:-[a-zA-Z0-9]+)*/.freeze
51+
LANGTAG = /@[a-zA-Z]+(?:-[a-zA-Z0-9]+)*/u.freeze
5252
# 19
53-
INTEGER = /[+-]?[0-9]+/.freeze
53+
INTEGER = /[+-]?[0-9]+/u.freeze
5454
# 20
55-
DECIMAL = /[+-]?(?:[0-9]*\.[0-9]+)/.freeze
55+
DECIMAL = /[+-]?(?:[0-9]*\.[0-9]+)/u.freeze
5656
# 21
57-
DOUBLE = /[+-]?(?:[0-9]+\.[0-9]*#{EXPONENT}|\.?[0-9]+#{EXPONENT})/.freeze
57+
DOUBLE = /[+-]?(?:[0-9]+\.[0-9]*#{EXPONENT}|\.?[0-9]+#{EXPONENT})/u.freeze
5858
# 22
59-
STRING_LITERAL_SINGLE_QUOTE = /'(?:[^\'\\\n\r]|#{ECHAR}|#{UCHAR})*'/.freeze
59+
STRING_LITERAL_SINGLE_QUOTE = /'(?:[^\'\\\n\r]|#{ECHAR}|#{UCHAR})*'/u.freeze
6060
# 23
61-
STRING_LITERAL_QUOTE = /"(?:[^\"\\\n\r]|#{ECHAR}|#{UCHAR})*"/.freeze
61+
STRING_LITERAL_QUOTE = /"(?:[^\"\\\n\r]|#{ECHAR}|#{UCHAR})*"/u.freeze
6262
# 24
63-
STRING_LITERAL_LONG_SINGLE_QUOTE = /'''(?:(?:'|'')?(?:[^'\\]|#{ECHAR}|#{UCHAR}))*'''/m.freeze
63+
STRING_LITERAL_LONG_SINGLE_QUOTE = /'''(?:(?:'|'')?(?:[^'\\]|#{ECHAR}|#{UCHAR}))*'''/um.freeze
6464
# 25
65-
STRING_LITERAL_LONG_QUOTE = /"""(?:(?:"|"")?(?:[^"\\]|#{ECHAR}|#{UCHAR}))*"""/m.freeze
65+
STRING_LITERAL_LONG_QUOTE = /"""(?:(?:"|"")?(?:[^"\\]|#{ECHAR}|#{UCHAR}))*"""/um.freeze
6666

6767
# 161s
68-
WS = /(?:\s|(?:#[^\n\r]*))+/m.freeze
68+
WS = /(?:\s|(?:#[^\n\r]*))+/um.freeze
6969
# 162s
70-
ANON = /\[#{WS}*\]/m.freeze
70+
ANON = /\[#{WS}*\]/um.freeze
7171
# 28t
72-
PREFIX = /@?prefix/i.freeze
72+
PREFIX = /@?prefix/ui.freeze
7373
# 29t
74-
BASE = /@?base/i.freeze
74+
BASE = /@?base/ui.freeze
7575

7676
end
7777
end

rdf-turtle.gemspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ Gem::Specification.new do |gem|
2121
gem.required_ruby_version = '>= 2.4'
2222
gem.requirements = []
2323
gem.add_runtime_dependency 'rdf', '~> 3.1', '>= 3.1.2'
24-
gem.add_runtime_dependency 'ebnf', '~> 1.2'
24+
gem.add_runtime_dependency 'ebnf', '~> 2.0'
2525
gem.add_development_dependency 'rspec', '~> 3.9'
2626
gem.add_development_dependency 'rspec-its', '~> 1.3'
2727
gem.add_development_dependency 'rdf-isomorphic', '~> 3.1'

0 commit comments

Comments
 (0)