PHRAS-1304_AUTO-COMPLETION_MASTER (#2061)

* PHRAS-1304_AUTO-COMPLETION_MASTER
ported from 4.0

* PHRAS-1304_AUTO-COMPLETION_MASTER
fix

* PHRAS-1304_AUTO-COMPLETION_MASTER
fix

* PHRAS-1304_AUTO-COMPLETION_MASTER
bump php version to 5.5.31 (5.5.21 is obsolete in cicleci)

* PHRAS-1304_AUTO-COMPLETION_MASTER
bump php version to 5.5.31 : php.ini moved in circelci

* PHRAS-1304_AUTO-COMPLETION_MASTER
add zmq & date to php for circleci

* PHRAS-1304_AUTO-COMPLETION_MASTER
add zmq

* PHRAS-1304_AUTO-COMPLETION_MASTER
bump amqp

* PHRAS-1304_AUTO-COMPLETION_MASTER
downgrade amqp to 1.2 to test compilation against old librabbit 0.4 (ubuntu)

* PHRAS-1304_AUTO-COMPLETION_MASTER
add amqp.so to php.ini, (re)bump amqp to 1.6

* PHRAS-1304_AUTO-COMPLETION_MASTER
build rabittmq from git

* PHRAS-1304_AUTO-COMPLETION_MASTER
build rabittmq from git again

* PHRAS-1304_AUTO-COMPLETION_MASTER
build rabittmq from git again and again

* PHRAS-1304_AUTO-COMPLETION_MASTER
fix test on media rotation 600*400 -> 400*599 !!!

* PHRAS-1304_AUTO-COMPLETION_MASTER
restore facebook sdk to 4.0.1 due to mistake

* PHRAS-1304_AUTO-COMPLETION_MASTER
deleted unwanted file
This commit is contained in:
jygaulier
2017-02-06 18:26:56 +01:00
committed by GitHub
parent cefb2f99f4
commit a70bf2fc70
69 changed files with 1032 additions and 593 deletions

View File

@@ -17,18 +17,26 @@ class databox_descriptionStructure implements IteratorAggregate, Countable
*/
protected $elements = [];
/** @var unicode */
private $unicode;
const STRICT_COMPARE = 1;
const SLUG_COMPARE = 2;
/**
* Cache array for the get element by name function
*
* @var array<string,int>|null
* @var int[]|null
*/
protected $cache_name_id;
/**
* @param databox_field[] $fields
* @param unicode $unicode
*/
public function __construct($fields = [])
public function __construct($fields, unicode $unicode)
{
$this->unicode = $unicode;
Assertion::allIsInstanceOf($fields, databox_field::class);
foreach ($fields as $field) {
@@ -95,9 +103,11 @@ class databox_descriptionStructure implements IteratorAggregate, Countable
/**
* @param string $name
* @param int $compareMode // use STRICT_COMPARE if the name already comes from phrasea (faster)
*
* @return databox_field|null
*/
public function get_element_by_name($name)
public function get_element_by_name($name, $compareMode=self::SLUG_COMPARE)
{
if (null === $this->cache_name_id) {
$this->cache_name_id = [];
@@ -107,7 +117,9 @@ class databox_descriptionStructure implements IteratorAggregate, Countable
}
}
$name = databox_field::generateName($name);
if($compareMode == self::SLUG_COMPARE) {
$name = databox_field::generateName($name, $this->unicode);
}
return isset($this->cache_name_id[$name])
? $this->elements[$this->cache_name_id[$name]]