Create quads hierarchy
* Move nquads into quad. * Create cquads simplified parser in quad. * Move Triple (renamed Quad) to quad. Also made sure mongo actually implements BulkLoader.
This commit is contained in:
parent
01bc63810b
commit
401c58426f
51 changed files with 13400 additions and 5495 deletions
58
quad/cquads/parse.rl
Normal file
58
quad/cquads/parse.rl
Normal file
|
|
@ -0,0 +1,58 @@
|
|||
// GO SOURCE FILE MACHINE GENERATED BY RAGEL; DO NOT EDIT
|
||||
|
||||
// Copyright 2014 The Cayley Authors. All rights reserved.
|
||||
//
|
||||
// Licensed under the Apache License, Version 2.0 (the "License");
|
||||
// you may not use this file except in compliance with the License.
|
||||
// You may obtain a copy of the License at
|
||||
//
|
||||
// http://www.apache.org/licenses/LICENSE-2.0
|
||||
//
|
||||
// Unless required by applicable law or agreed to in writing, software
|
||||
// distributed under the License is distributed on an "AS IS" BASIS,
|
||||
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
package cquads
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"unicode"
|
||||
|
||||
"github.com/google/cayley/quad"
|
||||
)
|
||||
|
||||
%%{
|
||||
machine quads;
|
||||
|
||||
include "actions.rl";
|
||||
|
||||
include "cquads.rl";
|
||||
|
||||
write data;
|
||||
}%%
|
||||
|
||||
func parse(data []rune) (quad.Quad, error) {
|
||||
var (
|
||||
cs, p int
|
||||
pe = len(data)
|
||||
eof = pe
|
||||
|
||||
subject = -1
|
||||
predicate = -1
|
||||
object = -1
|
||||
label = -1
|
||||
|
||||
isEscaped bool
|
||||
isQuoted bool
|
||||
|
||||
q quad.Quad
|
||||
)
|
||||
|
||||
%%write init;
|
||||
|
||||
%%write exec;
|
||||
|
||||
return quad.Quad{}, quad.ErrInvalid
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue